home *** CD-ROM | disk | FTP | other *** search
MacBinary | 1999-01-10 | 20.4 KB | [ TEXT/MSET]
open in: MacOS 8.1
extracted
|
Win98
extracted
|
DOS
extracted
browse contents |
view JSON data
|
view as text
This file was processed as: MacBinary
(archive/macBinary ).
id metadata key value macFileType [ TEXT] macFileCreator [ MSET]
hex view +--------+-------------------------+-------------------------+--------+--------+ |00000000| 00 05 70 6e 75 63 33 00 | 00 00 00 00 00 00 00 00 |..pnuc3.|........| |00000010| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........| |00000020| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........| |00000030| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........| |00000040| 00 54 45 58 54 4d 53 45 | 54 01 00 00 00 00 00 00 |.TEXTMSE|T.......| |00000050| 00 00 00 00 00 4f 50 00 | 00 01 7d b2 be c6 fe b2 |.....OP.|..}.....| |00000060| be c6 fe 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........| |00000070| 00 00 00 00 00 00 00 00 | 00 00 81 81 56 82 00 00 |........|....V...| |00000080| 5c 09 09 09 09 09 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |\.....==|========| |00000090| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========| |000000a0| 3d 0d 5c 09 09 20 20 20 | 20 09 09 09 09 41 50 50 |=.\.. | ....APP| |000000b0| 4c 45 45 56 45 4e 54 53 | 0d 5c 09 09 09 09 09 3d |LEEVENTS|.\.....=| |000000c0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========| |000000d0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 0d 0d 3a 20 41 45 |========|==..: AE| |000000e0| 48 41 4e 44 4c 45 52 20 | 20 28 20 5e 41 45 20 5e |HANDLER | ( ^AE ^| |000000f0| 41 45 52 65 70 6c 79 20 | 52 65 66 43 6f 6e 20 2d |AEReply |RefCon -| |00000100| 2d 20 29 0d 0d 5c 20 50 | 75 74 20 61 74 20 74 68 |- )..\ P|ut at th| |00000110| 65 20 73 74 61 72 74 20 | 6f 66 20 61 6e 20 41 70 |e start |of an Ap| |00000120| 70 6c 65 45 76 65 6e 74 | 20 68 61 6e 64 6c 65 72 |pleEvent| handler| |00000130| 20 70 72 6f 63 2e 20 20 | 50 6f 70 73 20 74 68 65 | proc. |Pops the| |00000140| 20 70 61 72 6d 73 20 69 | 6e 74 6f 0d 5c 20 74 68 | parms i|nto.\ th| |00000150| 65 20 61 70 70 72 6f 70 | 72 69 61 74 65 20 6c 6f |e approp|riate lo| |00000160| 63 61 74 69 6f 6e 73 2e | 0d 0d 3b 0d 0d 09 0d 3a |cations.|..;....:| |00000170| 20 47 4f 54 50 41 52 4d | 53 3f 20 20 28 20 2d 2d | GOTPARM|S? ( --| |00000180| 20 72 63 20 29 0d 0d 5c | 20 54 68 69 73 20 63 61 | rc )..\| This ca| |00000190| 6e 20 62 65 20 63 61 6c | 6c 65 64 20 61 74 20 74 |n be cal|led at t| |000001a0| 68 65 20 65 6e 64 20 6f | 66 20 61 20 68 61 6e 64 |he end o|f a hand| |000001b0| 6c 65 72 2c 20 74 6f 20 | 63 68 65 63 6b 20 69 66 |ler, to |check if| |000001c0| 20 77 65 20 67 6f 74 20 | 61 6c 6c 0d 5c 20 74 68 | we got |all.\ th| |000001d0| 65 20 70 61 72 61 6d 65 | 74 65 72 73 2e 0d 0d 3b |e parame|ters...;| |000001e0| 0d 0d 0d 3a 20 3f 52 54 | 4e 41 45 50 4d 49 53 53 |...: ?RT|NAEPMISS| |000001f0| 45 44 20 20 28 20 72 63 | 20 2d 2d 20 72 63 27 20 |ED ( rc| -- rc' | |00000200| 29 0d 0d 5c 20 54 68 69 | 73 20 63 61 6e 20 62 65 |)..\ Thi|s can be| |00000210| 20 63 61 6c 6c 65 64 20 | 61 66 74 65 72 20 63 61 | called |after ca| |00000220| 6c 6c 69 6e 67 20 47 6f | 74 50 61 72 6d 73 3f 20 |lling Go|tParms? | |00000230| 74 6f 20 63 6f 6e 76 65 | 72 74 20 74 68 65 20 72 |to conve|rt the r| |00000240| 65 74 75 72 6e 20 63 6f | 64 65 0d 5c 20 66 72 6f |eturn co|de.\ fro| |00000250| 6d 20 74 68 61 74 20 77 | 6f 72 64 20 74 6f 20 74 |m that w|ord to t| |00000260| 68 65 20 61 70 70 72 6f | 70 72 69 61 74 65 20 72 |he appro|priate r| |00000270| 65 74 75 72 6e 20 63 6f | 64 65 20 74 6f 20 72 65 |eturn co|de to re| |00000280| 74 75 72 6e 20 74 6f 20 | 74 68 65 20 63 61 6c 6c |turn to |the call| |00000290| 65 72 0d 5c 20 6f 66 20 | 74 68 65 20 68 61 6e 64 |er.\ of |the hand| |000002a0| 6c 65 72 2e 20 20 49 66 | 20 47 6f 74 50 61 72 6d |ler. If| GotParm| |000002b0| 73 3f 20 72 65 74 75 72 | 6e 73 20 66 61 6c 73 65 |s? retur|ns false| |000002c0| 2c 20 74 68 61 74 20 6d | 65 61 6e 73 20 77 65 20 |, that m|eans we | |000002d0| 6d 69 73 73 65 64 0d 5c | 20 61 20 70 61 72 6d 2c |missed.\| a parm,| |000002e0| 20 73 6f 20 77 65 20 72 | 65 74 75 72 6e 20 2d 31 | so we r|eturn -1| |000002f0| 37 31 35 2e 20 20 49 66 | 20 47 6f 74 50 61 72 6d |715. If| GotParm| |00000300| 73 3f 20 72 65 74 75 72 | 6e 65 64 20 61 6e 79 74 |s? retur|ned anyt| |00000310| 68 69 6e 67 20 6e 6f 6e | 2d 7a 65 72 6f 2c 0d 5c |hing non|-zero,.\| |00000320| 20 74 68 61 74 20 6d 65 | 61 6e 73 20 77 65 20 67 | that me|ans we g| |00000330| 6f 74 20 61 6c 6c 20 74 | 68 65 20 70 61 72 6d 73 |ot all t|he parms| |00000340| 2c 20 73 6f 20 77 65 20 | 72 65 74 75 72 6e 20 7a |, so we |return z| |00000350| 65 72 6f 2e 0d 0d 09 49 | 46 20 20 30 20 20 45 4c |ero....I|F 0 EL| |00000360| 53 45 20 20 2d 31 37 31 | 35 20 20 54 48 45 4e 20 |SE -171|5 THEN | |00000370| 20 3b 0d 0d 0d 5c 09 09 | 09 09 09 3d 3d 3d 3d 3d | ;...\..|...=====| |00000380| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========| |00000390| 3d 3d 3d 0d 5c 09 09 09 | 09 09 09 20 45 52 52 4f |===.\...|... ERRO| |000003a0| 52 20 48 41 4e 44 4c 49 | 4e 47 0d 5c 09 09 09 09 |R HANDLI|NG.\....| |000003b0| 09 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |.=======|========| |000003c0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 0d 0d 28 2a 09 54 68 |========|=..(*.Th| |000003d0| 69 73 20 69 73 20 75 6e | 66 6f 72 74 75 6e 61 74 |is is un|fortunat| |000003e0| 65 6c 79 20 61 20 62 69 | 74 20 63 6f 6d 70 6c 69 |ely a bi|t compli| |000003f0| 63 61 74 65 64 2e 20 20 | 54 68 65 20 62 61 73 69 |cated. |The basi| |00000400| 63 20 6d 65 63 68 61 6e | 69 73 6d 20 69 73 0d 09 |c mechan|ism is..| |00000410| 74 68 65 20 73 74 61 6e | 64 61 72 64 20 43 41 54 |the stan|dard CAT| |00000420| 43 48 20 61 6e 64 20 54 | 48 52 4f 57 2e 20 20 41 |CH and T|HROW. A| |00000430| 70 61 72 74 20 66 72 6f | 6d 20 54 48 52 4f 57 2c |part fro|m THROW,| |00000440| 20 74 68 65 72 65 20 61 | 72 65 20 74 68 72 65 65 | there a|re three| |00000450| 0d 09 77 6f 72 64 73 20 | 77 68 69 63 68 20 73 69 |..words |which si| |00000460| 67 6e 61 6c 20 61 6e 20 | 65 72 72 6f 72 20 2d 20 |gnal an |error - | |00000470| 41 42 4f 52 54 2c 20 41 | 42 4f 52 54 22 20 61 6e |ABORT, A|BORT" an| |00000480| 64 20 6f 75 72 20 4d 6f | 70 73 20 65 72 72 6f 72 |d our Mo|ps error| |00000490| 0d 09 64 75 6d 70 20 77 | 6f 72 64 20 44 49 45 2e |..dump w|ord DIE.| |000004a0| 0d 09 0d 09 54 68 65 20 | 73 74 61 6e 64 61 72 64 |....The |standard| |000004b0| 20 73 61 79 73 20 74 68 | 61 74 20 69 66 20 43 41 | says th|at if CA| |000004c0| 54 43 48 20 61 6e 64 20 | 54 48 52 4f 57 20 61 72 |TCH and |THROW ar| |000004d0| 65 0d 09 69 6d 70 6c 65 | 6d 65 6e 74 65 64 2c 20 |e..imple|mented, | |000004e0| 41 42 4f 52 54 20 74 68 | 72 6f 77 73 20 61 20 2d |ABORT th|rows a -| |000004f0| 31 2c 20 61 6e 64 20 41 | 42 4f 52 54 22 20 74 68 |1, and A|BORT" th| |00000500| 72 6f 77 73 20 61 20 2d | 32 2e 20 20 54 68 69 73 |rows a -|2. This| |00000510| 0d 09 61 6c 6c 6f 77 73 | 20 61 20 74 68 72 6f 77 |..allows| a throw| |00000520| 20 68 61 6e 64 6c 65 72 | 20 74 6f 20 63 61 74 63 | handler| to catc| |00000530| 68 20 74 68 65 73 65 20 | 61 6e 64 20 6f 76 65 72 |h these |and over| |00000540| 72 69 64 65 20 74 68 65 | 20 64 65 66 61 75 6c 74 |ride the| default| |00000550| 0d 09 65 72 72 6f 72 20 | 61 63 74 69 6f 6e 2e 0d |..error |action..| |00000560| 09 0d 09 49 66 20 6e 6f | 20 74 68 72 6f 77 20 68 |...If no| throw h| |00000570| 61 6e 64 6c 65 72 20 69 | 73 20 69 6e 73 74 61 6c |andler i|s instal| |00000580| 6c 65 64 2c 20 74 68 65 | 20 64 65 66 61 75 6c 74 |led, the| default| |00000590| 20 61 63 74 69 6f 6e 0d | 09 6f 63 63 75 72 73 2e | action.|.occurs.| |000005a0| 20 20 46 6f 72 20 74 68 | 69 73 20 64 65 66 61 75 | For th|is defau| |000005b0| 6c 74 20 61 63 74 69 6f | 6e 2c 20 77 65 20 64 65 |lt actio|n, we de| |000005c0| 66 69 6e 65 20 44 46 4c | 54 5f 41 42 4f 52 54 20 |fine DFL|T_ABORT | |000005d0| 61 6e 64 20 44 46 4c 54 | 5f 45 52 52 0d 09 28 49 |and DFLT|_ERR..(I| |000005e0| 20 61 73 73 75 6d 65 20 | 49 20 64 69 64 6e 27 74 | assume |I didn't| |000005f0| 20 77 61 6e 74 20 74 6f | 20 63 61 6c 6c 20 69 74 | want to| call it| |00000600| 20 64 66 6c 74 2d 61 62 | 6f 72 74 22 20 73 69 6e | dflt-ab|ort" sin| |00000610| 63 65 20 69 74 20 64 6f | 65 73 6e 27 74 20 74 61 |ce it do|esn't ta| |00000620| 6b 65 0d 09 61 6e 20 69 | 6e 6c 69 6e 65 20 73 74 |ke..an i|nline st| |00000630| 72 69 6e 67 20 2d 20 74 | 68 61 74 20 77 61 73 20 |ring - t|hat was | |00000640| 73 74 6f 72 65 64 20 62 | 79 20 41 42 4f 52 54 22 |stored b|y ABORT"| |00000650| 2e 29 0d 0d 09 57 65 20 | 66 6f 6c 6c 6f 77 20 74 |.)...We |follow t| |00000660| 68 65 20 73 61 6d 65 20 | 70 68 69 6c 6f 73 6f 70 |he same |philosop| |00000670| 68 79 20 77 69 74 68 20 | 44 49 45 2e 20 20 54 68 |hy with |DIE. Th| |00000680| 65 20 65 72 72 6f 72 20 | 63 6f 64 65 20 70 61 73 |e error |code pas| |00000690| 73 65 64 20 74 6f 0d 09 | 44 49 45 20 69 73 20 73 |sed to..|DIE is s| |000006a0| 69 6d 70 6c 79 20 54 48 | 52 4f 57 6e 20 28 6e 6f |imply TH|ROWn (no| |000006b0| 74 65 20 77 65 20 64 6f | 6e 27 74 20 75 73 65 20 |te we do|n't use | |000006c0| 61 6e 79 20 6e 65 67 61 | 74 69 76 65 20 65 72 72 |any nega|tive err| |000006d0| 6f 72 20 63 6f 64 65 0d | 09 66 6f 72 20 61 20 6e |or code.|.for a n| |000006e0| 6f 6e 2d 41 4e 53 49 20 | 4d 6f 70 73 20 65 72 72 |on-ANSI |Mops err| |000006f0| 6f 72 29 2c 20 77 68 69 | 63 68 20 61 6c 6c 6f 77 |or), whi|ch allow| |00000700| 73 20 61 20 74 68 72 6f | 77 20 68 61 6e 64 6c 65 |s a thro|w handle| |00000710| 72 20 74 6f 20 69 6e 74 | 65 72 63 65 70 74 0d 09 |r to int|ercept..| |00000720| 69 74 2e 20 20 41 6e 64 | 20 77 65 20 64 65 66 69 |it. And| we defi| |00000730| 6e 65 20 44 46 4c 54 5f | 44 49 45 20 74 6f 20 62 |ne DFLT_|DIE to b| |00000740| 65 20 65 78 65 63 75 74 | 65 64 20 69 66 20 74 68 |e execut|ed if th| |00000750| 65 72 65 27 73 20 6e 6f | 20 74 68 72 6f 77 20 68 |ere's no| throw h| |00000760| 61 6e 64 6c 65 72 2c 0d | 09 77 68 69 63 68 20 64 |andler,.|.which d| |00000770| 6f 65 73 20 6f 75 72 20 | 6e 6f 72 6d 61 6c 20 4d |oes our |normal M| |00000780| 6f 70 73 20 65 72 72 6f | 72 20 64 75 6d 70 20 74 |ops erro|r dump t| |00000790| 6f 20 74 68 65 20 4d 6f | 70 73 20 77 69 6e 64 6f |o the Mo|ps windo| |000007a0| 77 2e 0d 2a 29 0d 0d 0d | 66 6f 72 77 61 72 64 20 |w..*)...|forward | |000007b0| 51 55 49 54 0d 66 6f 72 | 77 61 72 64 20 28 2e 73 |QUIT.for|ward (.s| |000007c0| 74 6b 29 0d 66 6f 72 77 | 61 72 64 20 2e 6f 62 6a |tk).forw|ard .obj| |000007d0| 4f 72 52 41 0d 66 6f 72 | 77 61 72 64 20 74 73 74 |OrRA.for|ward tst| |000007e0| 72 0d 0d 0d 30 09 09 76 | 61 6c 75 65 09 6f 72 69 |r...0..v|alue.ori| |000007f0| 67 43 44 50 09 09 09 5c | 20 73 65 74 20 74 6f 20 |gCDP...\| set to | |00000800| 74 68 65 20 22 6e 6f 72 | 6d 61 6c 22 20 43 44 50 |the "nor|mal" CDP| |00000810| 20 69 66 20 77 65 27 72 | 65 0d 09 09 09 09 09 09 | if we'r|e.......| |00000820| 09 09 5c 20 20 74 65 6d | 70 6f 72 61 72 69 6c 79 |..\ tem|porarily| |00000830| 20 69 6e 20 74 68 65 20 | 65 78 65 63 75 74 69 6f | in the |executio| |00000840| 6e 20 62 75 66 66 65 72 | 0d 0d 0d 3a 20 54 79 70 |n buffer|...: Typ| |00000850| 65 45 72 72 4e 75 6d 20 | 20 28 20 65 72 72 23 20 |eErrNum | ( err# | |00000860| 2d 2d 20 29 0d 09 69 6e | 73 74 6c 64 3f 20 20 3f |-- )..in|stld? ?| |00000870| 45 58 49 54 0d 09 63 72 | 20 2e 22 20 45 72 72 6f |EXIT..cr| ." Erro| |00000880| 72 20 23 20 22 20 20 64 | 75 70 20 2e 20 20 73 70 |r # " d|up . sp| |00000890| 61 63 65 20 20 74 73 74 | 72 0d 3b 0d 0d 0d 28 2a |ace tst|r.;...(*| |000008a0| 09 53 41 56 45 5f 45 52 | 52 20 28 20 61 64 64 72 |.SAVE_ER|R ( addr| |000008b0| 20 6c 65 6e 20 5e 65 64 | 20 2d 2d 20 29 0d 09 73 | len ^ed| -- )..s| |000008c0| 61 76 65 73 20 61 6c 6c | 20 74 68 65 20 69 6e 66 |aves all| the inf| |000008d0| 6f 20 6e 65 65 64 65 64 | 20 66 6f 72 20 61 6e 20 |o needed| for an | |000008e0| 65 72 72 6f 72 20 64 75 | 6d 70 2c 20 66 6f 72 20 |error du|mp, for | |000008f0| 6c 61 74 65 72 20 75 73 | 65 20 62 79 20 74 68 65 |later us|e by the| |00000900| 20 64 65 66 61 75 6c 74 | 0d 09 65 72 72 6f 72 20 | default|..error | |00000910| 68 61 6e 64 6c 69 6e 67 | 20 72 6f 75 74 69 6e 65 |handling| routine| |00000920| 20 77 68 69 63 68 20 6d | 61 79 20 62 65 20 63 61 | which m|ay be ca| |00000930| 6c 6c 65 64 20 61 66 74 | 65 72 20 74 68 65 20 73 |lled aft|er the s| |00000940| 74 61 63 6b 73 20 68 61 | 76 65 20 62 65 65 6e 0d |tacks ha|ve been.| |00000950| 09 72 65 73 65 74 2e 20 | 20 54 68 69 73 20 77 61 |.reset. | This wa| |00000960| 79 2c 20 54 48 52 4f 57 | 20 63 61 6e 20 62 65 20 |y, THROW| can be | |00000970| 63 61 6c 6c 65 64 20 77 | 69 74 68 6f 75 74 20 6f |called w|ithout o| |00000980| 75 72 20 68 61 76 69 6e | 67 20 74 6f 20 6b 6e 6f |ur havin|g to kno| |00000990| 77 20 69 66 20 61 0d 09 | 6e 6f 6e 2d 64 65 66 61 |w if a..|non-defa| |000009a0| 75 6c 74 20 65 72 72 6f | 72 20 72 6f 75 74 69 6e |ult erro|r routin| |000009b0| 65 20 69 73 20 69 6e 73 | 74 61 6c 6c 65 64 20 6f |e is ins|talled o| |000009c0| 72 20 6e 6f 74 2e 20 20 | 28 20 61 64 64 72 20 6c |r not. |( addr l| |000009d0| 65 6e 20 29 20 73 70 65 | 63 69 66 69 65 73 0d 09 |en ) spe|cifies..| |000009e0| 61 6e 20 65 72 72 6f 72 | 20 74 65 78 74 20 73 74 |an error| text st| |000009f0| 72 69 6e 67 2e 20 20 57 | 65 20 6d 61 79 20 70 61 |ring. W|e may pa| |00000a00| 73 73 20 28 20 65 72 72 | 23 20 2d 31 20 29 2c 20 |ss ( err|# -1 ), | |00000a10| 69 6e 20 77 68 69 63 68 | 20 63 61 73 65 20 65 72 |in which| case er| |00000a20| 72 23 20 69 73 20 61 0d | 09 4d 6f 70 73 20 65 72 |r# is a.|.Mops er| |00000a30| 72 6f 72 20 6e 75 6d 62 | 65 72 2c 20 77 68 6f 73 |ror numb|er, whos| |00000a40| 65 20 74 65 78 74 20 63 | 61 6e 20 62 65 20 74 79 |e text c|an be ty| |00000a50| 70 65 64 20 76 69 61 20 | 54 53 54 52 2e 20 20 46 |ped via |TSTR. F| |00000a60| 6f 72 20 41 42 4f 52 54 | 2c 20 77 68 69 63 68 0d |or ABORT|, which.| |00000a70| 09 68 61 73 20 6e 6f 20 | 65 72 72 6f 72 20 73 74 |.has no |error st| |00000a80| 72 69 6e 67 2c 20 77 65 | 20 70 61 73 73 20 28 20 |ring, we| pass ( | |00000a90| 30 20 30 20 29 2e 0d 0d | 09 4f 75 72 20 6e 6f 72 |0 0 )...|.Our nor| |00000aa0| 6d 61 6c 20 65 72 72 6f | 72 20 77 6f 72 64 20 69 |mal erro|r word i| |00000ab0| 73 20 44 49 45 2c 20 77 | 68 69 63 68 20 63 61 6c |s DIE, w|hich cal| |00000ac0| 6c 73 20 53 41 56 45 5f | 45 52 52 2c 20 74 68 65 |ls SAVE_|ERR, the| |00000ad0| 6e 20 63 61 6c 6c 73 0d | 09 54 68 72 6f 77 57 69 |n calls.|.ThrowWi| |00000ae0| 74 68 49 6e 66 6f 2c 20 | 74 68 65 20 61 6c 74 65 |thInfo, |the alte| |00000af0| 72 6e 61 74 69 76 65 20 | 74 6f 20 54 48 52 4f 57 |rnative |to THROW| |00000b00| 2e 0d 2a 29 0d 0d 3a 20 | 73 76 53 74 6b 20 20 7b |..*)..: |svStk {| |00000b10| 20 73 74 61 72 74 20 66 | 69 6e 69 73 68 20 5e 65 | start f|inish ^e| |00000b20| 64 20 5c 20 63 6e 74 20 | 2d 2d 20 5e 65 64 27 20 |d \ cnt |-- ^ed' | |00000b30| 7d 0d 09 66 69 6e 69 73 | 68 20 73 74 61 72 74 20 |}..finis|h start | |00000b40| 2d 20 20 32 20 3e 3e 20 | 20 2d 3e 20 63 6e 74 09 |- 2 >> | -> cnt.| |00000b50| 09 5c 20 23 23 20 61 73 | 73 75 6d 65 73 20 34 2d |.\ ## as|sumes 4-| |00000b60| 62 79 74 65 20 63 65 6c | 6c 73 0d 09 63 6e 74 20 |byte cel|ls..cnt | |00000b70| 6d 61 78 44 75 6d 70 20 | 6d 69 6e 20 20 2d 3e 20 |maxDump |min -> | |00000b80| 63 6e 74 0d 09 0d 09 63 | 6e 74 20 20 5e 65 64 20 |cnt....c|nt ^ed | |00000b90| 21 20 20 31 63 65 6c 6c | 20 2b 2b 3e 20 5e 65 64 |! 1cell| ++> ^ed| |00000ba0| 0d 09 63 6e 74 20 46 4f | 52 20 20 73 74 61 72 74 |..cnt FO|R start| |00000bb0| 20 40 20 20 5e 65 64 20 | 21 20 20 31 63 65 6c 6c | @ ^ed |! 1cell| |00000bc0| 20 2b 2b 3e 20 73 74 61 | 72 74 20 20 31 63 65 6c | ++> sta|rt 1cel| |00000bd0| 6c 20 2b 2b 3e 20 5e 65 | 64 20 20 4e 45 58 54 0d |l ++> ^e|d NEXT.| |00000be0| 09 5e 65 64 0d 3b 0d 0d | 3a 20 53 41 56 45 5f 45 |.^ed.;..|: SAVE_E| |00000bf0| 52 52 20 20 7b 20 61 64 | 64 72 20 6c 65 6e 20 5c |RR { ad|dr len \| |00000c00| 20 5e 65 64 20 2d 2d 20 | 7d 0d 09 5e 65 72 72 44 | ^ed -- |}..^errD| |00000c10| 75 6d 70 20 2d 3e 20 5e | 65 64 0d 09 6c 65 6e 09 |ump -> ^|ed..len.| |00000c20| 09 5e 65 64 20 21 09 31 | 63 65 6c 6c 20 2b 2b 3e |.^ed !.1|cell ++>| |00000c30| 20 5e 65 64 0d 09 61 64 | 64 72 09 5e 65 64 20 21 | ^ed..ad|dr.^ed !| |00000c40| 09 31 63 65 6c 6c 20 2b | 2b 3e 20 5e 65 64 09 09 |.1cell +|+> ^ed..| |00000c50| 5c 20 73 61 76 65 20 74 | 68 65 20 74 77 6f 20 70 |\ save t|he two p| |00000c60| 61 72 6d 73 0d 09 28 5e | 62 61 73 65 29 09 5e 65 |arms..(^|base).^e| |00000c70| 64 20 21 09 31 63 65 6c | 6c 20 2b 2b 3e 20 5e 65 |d !.1cel|l ++> ^e| |00000c80| 64 09 09 5c 20 73 61 76 | 65 20 70 74 72 20 74 6f |d..\ sav|e ptr to| |00000c90| 20 63 75 72 72 65 6e 74 | 20 6f 62 6a 20 28 2d 31 | current| obj (-1| |00000ca0| 20 69 66 20 6e 6f 6e 65 | 29 0d 09 53 50 20 53 50 | if none|)..SP SP| |00000cb0| 30 20 5e 65 64 20 73 76 | 53 74 6b 20 20 2d 3e 20 |0 ^ed sv|Stk -> | |00000cc0| 5e 65 64 09 09 09 5c 20 | 73 61 76 65 20 64 61 74 |^ed...\ |save dat| |00000cd0| 61 20 73 74 61 63 6b 0d | 09 52 50 20 32 30 20 2b |a stack.|.RP 20 +| |00000ce0| 09 09 09 09 09 09 09 09 | 5c 20 64 6f 6e 27 74 20 |........|\ don't | |00000cf0| 77 61 6e 74 20 74 6f 20 | 64 69 73 70 6c 61 79 20 |want to |display | |00000d00| 74 68 65 20 52 73 74 61 | 63 6b 0d 09 09 09 09 09 |the Rsta|ck......| |00000d10| 09 09 09 09 09 5c 20 20 | 63 65 6c 6c 73 20 77 69 |.....\ |cells wi| |00000d20| 74 68 20 6f 75 72 20 65 | 72 72 6f 72 2d 68 61 6e |th our e|rror-han| |00000d30| 64 6c 69 6e 67 20 63 61 | 6c 6c 73 0d 09 09 09 09 |dling ca|lls.....| |00000d40| 09 09 09 09 09 09 5c 20 | 20 61 6e 64 20 73 61 76 |......\ | and sav| |00000d50| 65 64 20 72 65 67 73 0d | 09 52 50 30 20 5e 65 64 |ed regs.|.RP0 ^ed| |00000d60| 20 73 76 53 74 6b 20 20 | 64 72 6f 70 09 09 09 09 | svStk |drop....| |00000d70| 09 5c 20 73 61 76 65 20 | 72 65 74 75 72 6e 20 73 |.\ save |return s| |00000d80| 74 61 63 6b 0d 3b 0d 0d | 0d 5c 20 2e 45 52 52 20 |tack.;..|.\ .ERR | |00000d90| 64 69 73 70 6c 61 79 73 | 20 74 68 65 20 65 72 72 |displays| the err| |00000da0| 6f 72 20 69 6e 66 6f 20 | 73 61 76 65 64 20 62 79 |or info |saved by| |00000db0| 20 53 41 56 45 5f 45 52 | 52 2e 20 20 54 68 65 20 | SAVE_ER|R. The | |00000dc0| 76 61 6c 75 65 20 2e 73 | 74 6b 4c 69 6d 69 74 0d |value .s|tkLimit.| |00000dd0| 5c 20 20 67 69 76 65 73 | 20 61 20 6d 61 78 69 6d |\ gives| a maxim| |00000de0| 75 6d 20 6f 66 20 73 74 | 61 63 6b 20 63 65 6c 6c |um of st|ack cell| |00000df0| 73 20 64 75 6d 70 65 64 | 20 2d 2d 20 74 68 69 73 |s dumped| -- this| |00000e00| 20 63 61 6e 20 62 65 20 | 75 73 65 64 20 74 6f 20 | can be |used to | |00000e10| 6b 65 65 70 0d 5c 20 20 | 69 6e 66 6f 20 66 72 6f |keep.\ |info fro| |00000e20| 6d 20 73 63 72 6f 6c 6c | 69 6e 67 20 6f 66 66 20 |m scroll|ing off | |00000e30| 74 68 65 20 73 63 72 65 | 65 6e 2e 0d 0d 62 69 67 |the scre|en...big| |00000e40| 23 09 76 61 6c 75 65 09 | 2e 73 74 6b 5f 6c 69 6d |#.value.|.stk_lim| |00000e50| 69 74 0d 66 61 6c 73 65 | 09 76 61 6c 75 65 09 64 |it.false|.value.d| |00000e60| 75 6d 70 69 6e 67 3f 0d | 0d 3a 20 2e 45 52 52 20 |umping?.|.: .ERR | |00000e70| 20 7b 20 5c 20 61 64 64 | 72 20 6c 65 6e 20 5e 6f | { \ add|r len ^o| |00000e80| 62 6a 20 5c 20 5e 65 64 | 20 2d 2d 20 7d 0d 09 64 |bj \ ^ed| -- }..d| |00000e90| 75 6d 70 69 6e 67 3f 20 | 20 49 46 20 63 72 20 20 |umping? | IF cr | |00000ea0| 45 58 49 54 20 20 54 48 | 45 4e 0d 0d 09 5e 65 72 |EXIT TH|EN...^er| |00000eb0| 72 44 75 6d 70 20 2d 3e | 20 5e 65 64 0d 09 5e 65 |rDump ->| ^ed..^e| |00000ec0| 64 20 40 20 20 2d 3e 20 | 6c 65 6e 09 09 31 63 65 |d @ -> |len..1ce| |00000ed0| 6c 6c 20 2b 2b 3e 20 5e | 65 64 0d 09 5e 65 64 20 |ll ++> ^|ed..^ed | |00000ee0| 40 20 20 2d 3e 20 61 64 | 64 72 09 09 31 63 65 6c |@ -> ad|dr..1cel| |00000ef0| 6c 20 2b 2b 3e 20 5e 65 | 64 0d 0d 09 73 65 74 46 |l ++> ^e|d...setF| |00000f00| 77 69 6e 64 09 5c 20 52 | 65 64 69 72 65 63 74 65 |wind.\ R|edirecte| |00000f10| 64 20 74 6f 20 61 62 6f | 72 74 20 77 6f 72 64 20 |d to abo|rt word | |00000f20| 69 6e 20 69 6e 73 74 61 | 6c 6c 65 64 20 61 70 70 |in insta|lled app| |00000f30| 6c 69 63 6e 73 2c 20 73 | 6f 0d 09 09 09 09 5c 20 |licns, s|o.....\ | |00000f40| 20 77 65 20 64 6f 6e 27 | 74 20 74 72 79 20 74 6f | we don'|t try to| |00000f50| 20 74 79 70 65 20 74 6f | 20 74 68 65 20 4d 6f 70 | type to| the Mop| |00000f60| 73 20 77 69 6e 64 6f 77 | 2c 20 77 68 69 63 68 20 |s window|, which | |00000f70| 6d 61 79 0d 09 09 09 09 | 5c 20 20 77 65 6c 6c 20 |may.....|\ well | |00000f80| 6e 6f 74 20 65 78 69 73 | 74 2e 0d 09 74 72 75 65 |not exis|t...true| |00000f90| 20 2d 3e 20 64 75 6d 70 | 69 6e 67 3f 0d 09 35 20 | -> dump|ing?..5 | |00000fa0| 62 65 65 70 20 20 63 72 | 0d 09 6c 65 6e 20 30 3e |beep cr|..len 0>| |00000fb0| 0d 09 49 46 09 61 64 64 | 72 20 6c 65 6e 20 74 79 |..IF.add|r len ty| |00000fc0| 70 65 20 20 73 70 61 63 | 65 09 5c 20 74 68 65 72 |pe spac|e.\ ther| |00000fd0| 65 27 73 20 61 6e 20 65 | 72 72 6f 72 20 73 74 72 |e's an e|rror str| |00000fe0| 69 6e 67 0d 09 45 4c 53 | 45 0d 09 09 6c 65 6e 20 |ing..ELS|E...len | |00000ff0| 30 3c 0d 09 09 49 46 09 | 09 09 09 09 09 5c 20 6e |0<...IF.|.....\ n| |00001000| 6f 20 65 72 72 6f 72 20 | 73 74 72 69 6e 67 20 2d |o error |string -| |00001010| 20 22 61 64 64 72 22 20 | 69 73 0d 09 09 09 09 09 | "addr" |is......| |00001020| 09 09 09 5c 20 20 72 65 | 61 6c 6c 79 20 61 6e 20 |...\ re|ally an | |00001030| 65 72 72 20 6e 75 6d 62 | 65 72 0d 09 09 09 61 64 |err numb|er....ad| |00001040| 64 72 20 31 30 20 75 3e | 09 09 09 5c 20 65 72 72 |dr 10 u>|...\ err| |00001050| 23 20 31 2d 31 30 20 64 | 6f 6e 27 74 20 68 61 76 |# 1-10 d|on't hav| |00001060| 65 20 6d 65 73 73 61 67 | 65 73 20 2d 20 77 65 0d |e messag|es - we.| |00001070| 09 09 09 09 09 09 09 09 | 5c 20 20 63 61 6e 20 75 |........|\ can u| |00001080| 73 65 20 74 68 65 6d 20 | 66 6f 72 20 73 70 65 63 |se them |for spec| |00001090| 69 61 6c 20 74 68 69 6e | 67 73 0d 09 09 09 49 46 |ial thin|gs....IF| |000010a0| 20 20 61 64 64 72 20 74 | 79 70 65 45 72 72 4e 75 | addr t|ypeErrNu| |000010b0| 6d 20 20 54 48 45 4e 0d | 09 09 54 48 45 4e 0d 09 |m THEN.|..THEN..| |000010c0| 54 48 45 4e 0d 0d 09 63 | 72 20 20 73 72 63 2d 73 |THEN...c|r src-s| |000010d0| 74 61 72 74 20 73 72 63 | 2d 6c 65 6e 20 74 79 70 |tart src|-len typ| |000010e0| 65 20 20 63 72 09 5c 20 | 74 79 70 65 20 65 72 72 |e cr.\ |type err| |000010f0| 6f 72 20 6c 69 6e 65 0d | 09 3e 69 6e 20 40 20 31 |or line.|.>in @ 1| |00001100| 2d 20 73 70 61 63 65 73 | 20 20 26 20 5e 20 65 6d |- spaces| & ^ em| |00001110| 69 74 20 20 63 72 09 5c | 20 61 6e 64 20 65 72 72 |it cr.\| and err| |00001120| 6f 72 20 70 6f 73 69 74 | 69 6f 6e 20 6d 61 72 6b |or posit|ion mark| |00001130| 65 72 0d 0d 09 5e 65 64 | 20 40 20 20 20 31 63 65 |er...^ed| @ 1ce| |00001140| 6c 6c 20 2b 2b 3e 20 5e | 65 64 0d 09 2d 3e 20 5e |ll ++> ^|ed..-> ^| |00001150| 6f 62 6a 0d 09 5e 6f 62 | 6a 20 2d 31 20 3c 3e 0d |obj..^ob|j -1 <>.| |00001160| 09 49 46 09 2e 22 20 43 | 75 72 72 65 6e 74 20 6f |.IF.." C|urrent o| |00001170| 62 6a 65 63 74 3a 20 20 | 22 0d 09 09 5e 6f 62 6a |bject: |"...^obj| |00001180| 20 2e 6f 62 6a 4f 72 52 | 41 20 20 63 72 0d 09 54 | .objOrR|A cr..T| |00001190| 48 45 4e 0d 0d 09 5e 65 | 64 20 40 20 20 63 65 6c |HEN...^e|d @ cel| |000011a0| 6c 73 20 2d 3e 20 6c 65 | 6e 20 20 20 31 63 65 6c |ls -> le|n 1cel| |000011b0| 6c 20 2b 2b 3e 20 5e 65 | 64 0d 5c 09 2e 73 74 6b |l ++> ^e|d.\..stk| |000011c0| 5f 6c 69 6d 69 74 20 32 | 64 75 70 20 3e 20 69 66 |_limit 2|dup > if| |000011d0| 20 6e 69 70 20 65 6c 73 | 65 20 64 72 6f 70 20 74 | nip els|e drop t| |000011e0| 68 65 6e 20 20 63 65 6c | 6c 73 20 20 2d 3e 20 6c |hen cel|ls -> l| |000011f0| 65 6e 09 0d 09 2e 22 20 | 53 74 61 63 6b 3a 22 0d |en...." |Stack:".| |00001200| 09 5e 65 64 20 6c 65 6e | 20 6f 76 65 72 20 2b 20 |.^ed len| over + | |00001210| 66 61 6c 73 65 20 20 28 | 2e 73 74 6b 29 09 6c 65 |false (|.stk).le| |00001220| 6e 20 20 20 2b 2b 3e 20 | 5e 65 64 0d 09 5e 65 64 |n ++> |^ed..^ed| |00001230| 20 40 20 20 63 65 6c 6c | 73 20 2d 3e 20 6c 65 6e | @ cell|s -> len| |00001240| 20 20 20 31 63 65 6c 6c | 20 2b 2b 3e 20 5e 65 64 | 1cell| ++> ^ed| |00001250| 0d 5c 09 2e 73 74 6b 5f | 6c 69 6d 69 74 20 6d 69 |.\..stk_|limit mi| |00001260| 6e 20 20 63 65 6c 6c 73 | 20 20 2d 3e 20 6c 65 6e |n cells| -> len| |00001270| 09 0d 09 2e 22 20 52 65 | 74 75 72 6e 20 73 74 61 |...." Re|turn sta| |00001280| 63 6b 3a 22 0d 09 5e 65 | 64 20 6c 65 6e 20 6f 76 |ck:"..^e|d len ov| |00001290| 65 72 20 2b 20 74 72 75 | 65 20 20 28 2e 73 74 6b |er + tru|e (.stk| |000012a0| 29 0d 09 62 69 67 23 20 | 2d 3e 20 2e 73 74 6b 5f |)..big# |-> .stk_| |000012b0| 6c 69 6d 69 74 0d 09 66 | 61 6c 73 65 20 2d 3e 20 |limit..f|alse -> | |000012c0| 64 75 6d 70 69 6e 67 3f | 0d 3b 0d 0d 66 6f 72 77 |dumping?|.;..forw| |000012d0| 61 72 64 20 73 65 74 75 | 70 5f 63 67 0d 0d 3a 20 |ard setu|p_cg..: | |000012e0| 64 66 6c 74 5f 61 62 6f | 72 74 0d 09 73 65 74 75 |dflt_abo|rt..setu| |000012f0| 70 5f 63 67 09 09 09 5c | 20 61 20 62 69 74 20 64 |p_cg...\| a bit d| |00001300| 72 61 73 74 69 63 2c 20 | 62 75 74 20 69 66 20 74 |rastic, |but if t| |00001310| 68 65 20 65 72 72 6f 72 | 20 69 73 20 61 6e 20 69 |he error| is an i| |00001320| 6e 64 65 78 0d 09 09 09 | 09 09 09 5c 20 20 6f 75 |ndex....|...\ ou| |00001330| 74 20 6f 66 20 72 61 6e | 67 65 20 6f 6e 20 6f 6e |t of ran|ge on on| |00001340| 65 20 6f 66 20 6f 75 72 | 20 72 65 67 69 73 74 65 |e of our| registe| |00001350| 72 20 61 72 72 61 79 73 | 2c 0d 09 09 09 09 09 09 |r arrays|,.......| |00001360| 5c 20 20 77 65 27 6c 6c | 20 6a 75 73 74 20 6b 65 |\ we'll| just ke| |00001370| 65 70 20 68 69 74 74 69 | 6e 67 20 74 68 65 20 65 |ep hitti|ng the e| |00001380| 72 72 6f 72 21 0d 09 6f | 72 69 67 43 44 50 20 49 |rror!..o|rigCDP I| |00001390| 46 20 20 6f 72 69 67 43 | 44 50 20 2d 3e 20 43 44 |F origC|DP -> CD| |000013a0| 50 20 20 54 48 45 4e 0d | 09 61 62 6f 72 74 56 65 |P THEN.|.abortVe| |000013b0| 63 0d 09 53 50 30 20 34 | 2b 20 53 50 21 20 20 52 |c..SP0 4|+ SP! R| |000013c0| 50 30 20 52 50 21 20 20 | 46 53 50 30 20 31 36 20 |P0 RP! |FSP0 16 | |000013d0| 2b 20 20 46 53 50 21 0d | 09 64 65 63 69 6d 61 6c |+ FSP!.|.decimal| |000013e0| 0d 09 30 20 20 23 54 49 | 42 20 21 20 20 73 65 74 |..0 #TI|B ! set| |000013f0| 5f 73 6f 75 72 63 65 20 | 20 2b 63 75 72 73 0d 09 |_source | +curs..| |00001400| 30 20 2d 3e 20 63 73 74 | 61 74 65 0d 09 66 61 6c |0 -> cst|ate..fal| |00001410| 73 65 20 2d 3e 20 6c 6f | 63 61 6c 3f 0d 09 30 20 |se -> lo|cal?..0 | |00001420| 2d 3e 20 6d 6f 64 5f 73 | 65 67 23 0d 09 51 55 49 |-> mod_s|eg#..QUI| |00001430| 54 0d 3b 0d 0d 3a 20 64 | 66 6c 74 5f 61 62 71 0d |T.;..: d|flt_abq.| |00001440| 09 65 72 72 5f 69 6e 66 | 6f 5f 76 61 6c 69 64 3f |.err_inf|o_valid?| |00001450| 0d 09 49 46 09 09 33 20 | 2d 3e 20 2e 73 74 6b 5f |..IF..3 |-> .stk_| |00001460| 6c 69 6d 69 74 20 20 2e | 65 72 72 0d 09 45 4c 53 |limit .|err..ELS| |00001470| 45 09 74 79 70 65 45 72 | 72 4e 75 6d 0d 09 54 48 |E.typeEr|rNum..TH| |00001480| 45 4e 0d 09 64 66 6c 74 | 5f 61 62 6f 72 74 0d 3b |EN..dflt|_abort.;| |00001490| 0d 0d 0d 66 6f 72 77 61 | 72 64 09 09 44 46 4c 54 |...forwa|rd..DFLT| |000014a0| 5f 44 49 45 0d 0d 3a 20 | 28 64 64 69 65 29 0d 09 |_DIE..: |(ddie)..| |000014b0| 73 65 74 46 77 69 6e 64 | 0d 09 30 20 2d 3e 20 28 |setFwind|..0 -> (| |000014c0| 65 72 72 23 29 09 09 09 | 5c 20 43 6c 65 61 72 20 |err#)...|\ Clear | |000014d0| 65 72 72 6f 72 20 69 6e | 64 69 63 61 74 6f 72 20 |error in|dicator | |000014e0| 66 72 6f 6d 20 41 70 70 | 6c 65 45 76 65 6e 74 73 |from App|leEvents| |000014f0| 0d 09 64 66 6c 74 5f 61 | 62 71 20 20 3b 09 09 09 |..dflt_a|bq ;...| |00001500| 5c 20 44 69 73 70 6c 61 | 79 20 65 72 72 6f 72 20 |\ Displa|y error | |00001510| 69 6e 66 6f 20 61 6e 64 | 20 61 62 6f 72 74 0d 0d |info and| abort..| |00001520| 3a 66 20 64 66 6c 74 5f | 64 69 65 09 09 28 64 64 |:f dflt_|die..(dd| |00001530| 69 65 29 20 20 3b 66 0d | 0d 0d 28 2a 09 43 41 54 |ie) ;f.|..(*.CAT| |00001540| 43 48 20 20 28 20 78 74 | 20 2d 2d 20 6e 20 29 20 |CH ( xt| -- n ) | |00001550| 20 45 58 45 43 55 54 45 | 73 20 74 68 65 20 78 74 | EXECUTE|s the xt| |00001560| 2e 20 20 49 66 20 74 68 | 65 20 65 78 65 63 75 74 |. If th|e execut| |00001570| 65 64 20 77 6f 72 64 20 | 64 6f 65 73 20 61 20 54 |ed word |does a T| |00001580| 48 52 4f 57 2c 0d 09 6e | 20 69 73 20 74 68 65 20 |HROW,..n| is the | |00001590| 65 72 72 6f 72 20 63 6f | 64 65 20 70 61 73 73 65 |error co|de passe| |000015a0| 64 20 74 6f 20 54 48 52 | 4f 57 2e 20 20 49 66 20 |d to THR|OW. If | |000015b0| 69 74 20 64 6f 65 73 6e | 27 74 20 20 64 6f 20 61 |it doesn|'t do a| |000015c0| 20 54 48 52 4f 57 2c 20 | 6e 20 69 73 0d 09 7a 65 | THROW, |n is..ze| |000015d0| 72 6f 2e 20 20 49 66 20 | 69 74 20 64 6f 65 73 20 |ro. If |it does | |000015e0| 61 20 54 48 52 4f 57 2c | 20 63 6f 6e 74 72 6f 6c |a THROW,| control| |000015f0| 20 64 6f 65 73 6e 27 74 | 20 72 65 74 75 72 6e 20 | doesn't| return | |00001600| 74 6f 20 43 41 54 43 48 | 2c 20 62 75 74 20 74 6f |to CATCH|, but to| |00001610| 0d 09 77 68 6f 65 76 65 | 72 20 63 61 6c 6c 65 64 |..whoeve|r called| |00001620| 20 43 41 54 43 48 2e 20 | 20 53 65 65 20 74 68 65 | CATCH. | See the| |00001630| 20 53 74 61 6e 64 61 72 | 64 20 66 6f 72 20 61 20 | Standar|d for a | |00001640| 66 75 6c 6c 20 64 65 73 | 63 72 69 70 74 69 6f 6e |full des|cription| |00001650| 2e 0d 09 0d 09 57 65 20 | 68 61 76 65 20 74 6f 20 |.....We |have to | |00001660| 75 73 65 20 61 73 73 65 | 6d 62 6c 79 20 66 6f 72 |use asse|mbly for| |00001670| 20 73 65 74 74 69 6e 67 | 20 74 68 69 73 20 75 70 | setting| this up| |00001680| 2c 20 73 69 6e 63 65 20 | 77 65 27 72 65 20 6d 61 |, since |we're ma| |00001690| 6e 69 70 75 6c 61 74 69 | 6e 67 0d 09 72 65 67 69 |nipulati|ng..regi| |000016a0| 73 74 65 72 73 2e 0d 2a | 29 0d 0d 30 09 76 61 6c |sters..*|)..0.val| |000016b0| 75 65 09 54 48 52 4f 57 | 5f 48 41 4e 44 4c 45 52 |ue.THROW|_HANDLER| |000016c0| 09 09 5c 20 68 6f 6c 64 | 73 20 74 68 65 20 61 64 |..\ hold|s the ad| |000016d0| 64 72 20 6f 66 20 74 68 | 65 20 63 75 72 72 65 6e |dr of th|e curren| |000016e0| 74 20 74 68 72 6f 77 20 | 68 61 6e 64 6c 65 72 0d |t throw |handler.| |000016f0| 09 09 09 09 09 09 09 09 | 5c 20 20 66 72 61 6d 65 |........|\ frame| |00001700| 2c 20 6f 72 20 7a 65 72 | 6f 20 69 66 20 6e 6f 6e |, or zer|o if non| |00001710| 65 2e 0d 0d 3a 20 66 72 | 61 6d 65 45 72 72 0d 09 |e...: fr|ameErr..| |00001720| 2e 22 20 52 65 74 75 72 | 6e 20 73 74 61 63 6b 20 |." Retur|n stack | |00001730| 63 6c 6f 62 62 65 72 65 | 64 21 22 0d 09 64 66 6c |clobbere|d!"..dfl| |00001740| 74 5f 61 62 6f 72 74 0d | 3b 0d 0d 0d 3a 20 6e 6f |t_abort.|;...: no| |00001750| 5f 74 68 72 6f 77 5f 68 | 61 6e 64 6c 65 72 20 28 |_throw_h|andler (| |00001760| 20 6e 20 2d 2d 20 29 09 | 09 5c 20 62 72 61 6e 63 | n -- ).|.\ branc| |00001770| 68 65 64 20 74 6f 20 66 | 72 6f 6d 20 28 54 48 52 |hed to f|rom (THR| |00001780| 4f 57 29 20 69 66 20 74 | 68 65 72 65 27 73 20 6e |OW) if t|here's n| |00001790| 6f 0d 09 09 09 09 09 09 | 09 09 5c 20 20 68 61 6e |o.......|..\ han| |000017a0| 64 6c 65 72 2e 20 20 54 | 61 6b 65 73 20 74 68 65 |dler. T|akes the| |000017b0| 20 64 65 66 61 75 6c 74 | 20 61 63 74 69 6f 6e 2e | default| action.| |000017c0| 0d 0d 09 65 72 72 6f 72 | 56 65 63 09 09 09 09 09 |...error|Vec.....| |000017d0| 5c 20 73 65 74 20 74 6f | 20 65 72 72 6f 72 20 77 |\ set to| error w| |000017e0| 6f 72 64 20 69 6e 20 69 | 6e 73 74 61 6c 6c 65 64 |ord in i|nstalled| |000017f0| 20 61 70 70 73 2c 20 73 | 6f 0d 09 09 09 09 09 09 | apps, s|o.......| |00001800| 09 09 5c 20 20 77 65 20 | 63 61 6e 20 62 61 69 6c |..\ we |can bail| |00001810| 20 6f 75 74 20 77 69 74 | 68 6f 75 74 20 4d 6f 70 | out wit|hout Mop| |00001820| 73 20 64 65 76 65 6c 6f | 70 6d 65 6e 74 0d 09 09 |s develo|pment...| |00001830| 09 09 09 09 09 09 5c 20 | 20 65 6e 76 69 72 6f 6e |......\ | environ| |00001840| 6d 65 6e 74 20 65 72 72 | 6f 72 20 68 61 6e 64 6c |ment err|or handl| |00001850| 69 6e 67 0d 0d 09 64 75 | 70 20 2d 31 20 3d 20 49 |ing...du|p -1 = I| |00001860| 46 20 20 64 66 6c 74 5f | 61 62 6f 72 74 09 54 48 |F dflt_|abort.TH| |00001870| 45 4e 09 5c 20 2d 31 3a | 20 64 6f 20 64 65 66 61 |EN.\ -1:| do defa| |00001880| 75 6c 74 20 41 42 4f 52 | 54 0d 09 64 75 70 20 2d |ult ABOR|T..dup -| |00001890| 32 20 3d 20 49 46 20 20 | 64 66 6c 74 5f 61 62 71 |2 = IF |dflt_abq| |000018a0| 09 54 48 45 4e 09 5c 20 | 2d 32 3a 20 64 6f 20 64 |.THEN.\ |-2: do d| |000018b0| 65 66 61 75 6c 74 20 41 | 42 4f 52 54 22 0d 09 64 |efault A|BORT"..d| |000018c0| 66 6c 74 5f 64 69 65 0d | 3b 0d 0d 0d 3a 70 70 63 |flt_die.|;...:ppc| |000018d0| 5f 63 6f 64 65 20 20 43 | 41 54 43 48 0d 0d 09 72 |_code C|ATCH...r| |000018e0| 30 09 09 09 09 09 6d 66 | 6c 72 2c 0d 09 72 30 09 |0.....mf|lr,..r0.| |000018f0| 09 2d 34 09 72 52 50 09 | 09 73 74 77 2c 09 5c 20 |.-4.rRP.|.stw,.\ | |00001900| 73 61 76 65 20 6c 72 20 | 2d 20 6f 75 72 20 72 65 |save lr |- our re| |00001910| 74 75 72 6e 20 61 64 64 | 72 0d 09 0d 09 72 33 09 |turn add|r....r3.| |00001920| 09 2d 31 36 09 72 52 50 | 09 09 73 74 77 75 2c 09 |.-16.rRP|..stwu,.| |00001930| 5c 20 6e 6f 77 20 73 61 | 76 65 20 31 20 63 61 63 |\ now sa|ve 1 cac| |00001940| 68 65 64 20 73 74 61 63 | 6b 20 63 65 6c 6c 20 28 |hed stac|k cell (| |00001950| 72 33 29 2e 20 20 72 34 | 20 69 73 0d 09 09 09 09 |r3). r4| is.....| |00001960| 09 09 09 09 5c 20 20 78 | 74 20 66 6f 72 20 45 58 |....\ x|t for EX| |00001970| 45 43 55 54 45 20 73 6f | 20 77 65 20 64 6f 6e 27 |ECUTE so| we don'| |00001980| 74 20 6e 65 65 64 20 74 | 6f 20 73 61 76 65 20 69 |t need t|o save i| |00001990| 74 2e 0d 09 09 09 09 09 | 09 09 09 5c 20 4e 6f 74 |t.......|...\ Not| |000019a0| 65 20 72 52 50 20 6d 75 | 73 74 20 73 74 61 79 20 |e rRP mu|st stay | |000019b0| 38 2d 62 79 74 65 20 61 | 6c 69 67 6e 65 64 0d 0d |8-byte a|ligned..| |000019c0| 09 27 20 73 61 76 65 73 | 20 32 2b 09 09 09 62 6c |.' saves| 2+...bl| |000019d0| 2c 0d 09 72 52 50 09 09 | 2d 34 38 09 09 09 61 64 |,..rRP..|-48...ad| |000019e0| 64 69 2c 09 5c 20 6e 6f | 77 20 61 6c 6c 20 6f 75 |di,.\ no|w all ou| |000019f0| 72 20 47 50 52 20 6c 6f | 63 61 6c 73 20 28 26 20 |r GPR lo|cals (& | |00001a00| 6b 65 65 70 20 72 52 50 | 20 61 6c 69 67 6e 65 64 |keep rRP| aligned| |00001a10| 29 0d 09 27 20 66 73 61 | 76 65 73 20 32 2b 09 09 |)..' fsa|ves 2+..| |00001a20| 09 62 6c 2c 0d 09 72 52 | 50 09 09 2d 38 38 09 09 |.bl,..rR|P..-88..| |00001a30| 09 61 64 64 69 2c 09 5c | 20 61 6e 64 20 61 6c 6c |.addi,.\| and all| |00001a40| 20 6f 75 72 20 46 50 52 | 20 6c 6f 63 61 6c 73 0d | our FPR| locals.| |00001a50| 0d 09 72 30 09 09 24 20 | 37 38 39 41 09 09 6c 69 |..r0..$ |789A..li| |00001a60| 2c 0d 09 72 30 09 09 2d | 31 36 09 72 52 50 09 09 |,..r0..-|16.rRP..| |00001a70| 73 74 77 75 2c 09 5c 20 | 63 72 65 61 74 65 20 66 |stwu,.\ |create f| |00001a80| 72 61 6d 65 20 68 65 61 | 64 65 72 20 61 6e 64 20 |rame hea|der and | |00001a90| 73 74 6f 72 65 20 6d 61 | 72 6b 65 72 0d 09 72 53 |store ma|rker..rS| |00001aa0| 50 09 09 34 09 72 52 50 | 09 09 73 74 77 2c 09 5c |P..4.rRP|..stw,.\| |00001ab0| 20 73 61 76 65 20 53 50 | 20 61 74 20 6f 66 66 73 | save SP| at offs| |00001ac0| 20 34 0d 09 72 30 09 09 | 27 20 74 68 72 6f 77 5f | 4..r0..|' throw_| |00001ad0| 68 61 6e 64 6c 65 72 20 | 32 2b 20 40 61 62 73 36 |handler |2+ @abs6| |00001ae0| 20 64 69 63 61 64 64 72 | 0d 09 09 09 09 09 09 6c | dicaddr|.......l| |00001af0| 77 7a 2c 0d 09 72 30 09 | 09 38 09 72 52 50 09 09 |wz,..r0.|.8.rRP..| |00001b00| 73 74 77 2c 09 5c 20 61 | 6e 64 20 70 72 65 76 69 |stw,.\ a|nd previ| |00001b10| 6f 75 73 20 68 61 6e 64 | 6c 65 72 20 61 64 64 72 |ous hand|ler addr| |00001b20| 20 61 74 20 6f 66 66 73 | 20 38 0d 09 72 52 50 09 | at offs| 8..rRP.| |00001b30| 09 27 20 74 68 72 6f 77 | 5f 68 61 6e 64 6c 65 72 |.' throw|_handler| |00001b40| 20 32 2b 20 40 61 62 73 | 36 20 64 69 63 61 64 64 | 2+ @abs|6 dicadd| |00001b50| 72 0d 09 09 09 09 09 09 | 73 74 77 2c 09 5c 20 61 |r.......|stw,.\ a| |00001b60| 6e 64 20 73 74 6f 72 65 | 20 52 50 20 28 66 72 61 |nd store| RP (fra| |00001b70| 6d 65 20 70 74 72 29 20 | 61 73 20 6e 65 77 20 68 |me ptr) |as new h| |00001b80| 61 6e 64 6c 65 72 20 61 | 64 64 72 0d 0d 27 20 65 |andler a|ddr..' e| |00001b90| 78 65 63 75 74 65 20 32 | 2b 09 09 09 62 6c 2c 09 |xecute 2|+...bl,.| |00001ba0| 09 5c 20 65 78 65 63 75 | 74 65 20 74 68 65 20 70 |.\ execu|te the p| |00001bb0| 61 73 73 65 64 2d 69 6e | 20 78 74 2e 20 20 4e 6f |assed-in| xt. No| |00001bc0| 74 65 0d 09 09 09 09 09 | 09 09 09 5c 20 20 74 68 |te......|...\ th| |00001bd0| 69 73 20 63 61 6c 6c 20 | 6f 6e 6c 79 20 72 65 74 |is call |only ret| |00001be0| 75 72 6e 73 20 69 66 20 | 54 48 52 4f 57 0d 09 09 |urns if |THROW...| |00001bf0| 09 09 09 09 09 09 5c 20 | 20 69 73 6e 27 74 20 64 |......\ | isn't d| |00001c00| 6f 6e 65 2e 0d 0d 09 72 | 30 09 09 30 09 72 52 50 |one....r|0..0.rRP| |00001c10| 09 09 6c 77 7a 2c 09 5c | 20 63 68 65 63 6b 20 6f |..lwz,.\| check o| |00001c20| 75 72 20 73 70 65 63 69 | 61 6c 20 6d 61 72 6b 65 |ur speci|al marke| |00001c30| 72 20 69 73 20 73 74 69 | 6c 6c 0d 09 72 30 09 09 |r is sti|ll..r0..| |00001c40| 24 20 37 38 39 41 09 09 | 63 6d 70 6c 69 2c 09 5c |$ 789A..|cmpli,.\| |00001c50| 20 20 6f 6e 20 74 6f 70 | 20 6f 66 20 72 74 6e 20 | on top| of rtn | |00001c60| 73 74 6b 0d 20 65 71 20 | 69 66 2c 09 09 09 09 09 |stk. eq |if,.....| |00001c70| 09 09 5c 20 79 65 70 2c | 20 61 6c 6c 20 4f 4b 0d |..\ yep,| all OK.| |00001c80| 20 09 72 30 09 09 38 09 | 72 52 50 09 09 6c 77 7a | .r0..8.|rRP..lwz| |00001c90| 2c 09 5c 20 67 65 74 20 | 70 72 65 76 20 74 68 72 |,.\ get |prev thr| |00001ca0| 6f 77 5f 68 61 6e 64 6c | 65 72 20 66 72 6f 6d 20 |ow_handl|er from | |00001cb0| 6f 66 66 73 20 38 0d 20 | 09 72 30 09 27 20 74 68 |offs 8. |.r0.' th| |00001cc0| 72 6f 77 5f 68 61 6e 64 | 6c 65 72 20 32 2b 20 40 |row_hand|ler 2+ @| |00001cd0| 61 62 73 36 20 20 64 69 | 63 61 64 64 72 0d 20 09 |abs6 di|caddr. .| |00001ce0| 09 09 09 09 09 73 74 77 | 2c 09 5c 20 72 65 73 74 |.....stw|,.\ rest| |00001cf0| 6f 72 65 20 70 72 65 76 | 69 6f 75 73 20 74 68 72 |ore prev|ious thr| |00001d00| 6f 77 5f 68 61 6e 64 6c | 65 72 0d 09 0d 20 09 72 |ow_handl|er... .r| |00001d10| 52 50 09 09 72 52 50 09 | 31 36 38 09 09 61 64 64 |RP..rRP.|168..add| |00001d20| 69 2c 09 5c 20 64 65 6c | 65 74 65 20 72 65 73 74 |i,.\ del|ete rest| |00001d30| 20 6f 66 20 66 72 61 6d | 65 20 2d 20 61 6c 6c 20 | of fram|e - all | |00001d40| 72 65 67 73 20 4f 4b 20 | 61 6c 72 65 61 64 79 0d |regs OK |already.| |00001d50| 20 09 72 30 09 09 2d 34 | 09 72 52 50 09 09 6c 77 | .r0..-4|.rRP..lw| |00001d60| 7a 2c 09 5c 20 72 65 73 | 74 6f 72 65 20 6c 72 0d |z,.\ res|tore lr.| |00001d70| 20 09 72 30 09 09 09 09 | 09 6d 74 6c 72 2c 0d 5c | .r0....|.mtlr,.\| |00001d80| 20 09 72 33 09 09 2d 34 | 09 72 53 50 09 09 73 74 | .r3..-4|.rSP..st| |00001d90| 77 75 2c 09 5c 20 77 65 | 20 68 61 76 65 20 32 20 |wu,.\ we| have 2 | |00001da0| 63 61 63 68 65 64 20 63 | 65 6c 6c 73 20 2d 20 70 |cached c|ells - p| |00001db0| 75 73 68 20 6f 6e 65 20 | 6f 66 66 0d 5c 20 09 72 |ush one |off.\ .r| |00001dc0| 33 09 09 72 34 09 09 09 | 6d 72 2c 0d 20 09 72 34 |3..r4...|mr,. .r4| |00001dd0| 09 09 72 30 09 30 09 09 | 61 64 64 69 2c 09 5c 20 |..r0.0..|addi,.\ | |00001de0| 61 6e 64 20 72 65 74 75 | 72 6e 20 7a 65 72 6f 20 |and retu|rn zero | |00001df0| 6f 6e 20 74 6f 70 20 28 | 6d 65 61 6e 73 20 6e 6f |on top (|means no| |00001e00| 20 65 72 72 6f 72 29 0d | 20 09 09 09 09 09 09 62 | error).| ......b| |00001e10| 6c 72 2c 0d 20 74 68 65 | 6e 2c 0d 09 09 27 20 66 |lr,. the|n,...' f| |00001e20| 72 61 6d 65 45 72 72 20 | 32 2b 09 62 2c 09 09 5c |rameErr |2+.b,..\| |00001e30| 20 72 74 6e 20 73 74 6b | 20 6d 61 72 6b 65 72 20 | rtn stk| marker | |00001e40| 6e 6f 74 20 74 68 65 72 | 65 20 2d 20 63 61 6c 6c |not ther|e - call| |00001e50| 20 66 72 61 6d 65 45 72 | 72 0d 0d 3b 70 70 63 5f | frameEr|r..;ppc_| |00001e60| 63 6f 64 65 0d 0d 0d 28 | 2a 09 54 48 52 4f 57 20 |code...(|*.THROW | |00001e70| 68 61 73 20 74 77 6f 20 | 76 61 72 69 61 6e 74 73 |has two |variants| |00001e80| 2e 20 20 54 68 72 6f 77 | 57 69 74 68 49 6e 66 6f |. Throw|WithInfo| |00001e90| 20 69 73 20 75 73 65 64 | 20 62 79 20 6f 75 72 20 | is used| by our | |00001ea0| 6e 6f 72 6d 61 6c 20 65 | 72 72 6f 72 0d 09 77 6f |normal e|rror..wo| |00001eb0| 72 64 20 44 49 45 2c 20 | 61 6e 64 20 61 6c 73 6f |rd DIE, |and also| |00001ec0| 20 62 79 20 41 42 4f 52 | 54 22 2c 20 77 68 69 63 | by ABOR|T", whic| |00001ed0| 68 20 62 6f 74 68 20 73 | 61 76 65 20 74 68 65 20 |h both s|ave the | |00001ee0| 65 72 72 6f 72 20 69 6e | 66 6f 20 28 69 6e 63 6c |error in|fo (incl| |00001ef0| 75 64 69 6e 67 0d 09 61 | 20 6d 65 73 73 61 67 65 |uding..a| message| |00001f00| 20 73 74 72 69 6e 67 29 | 20 62 65 66 6f 72 65 20 | string)| before | |00001f10| 64 6f 69 6e 67 20 61 20 | 6e 6f 72 6d 61 6c 20 74 |doing a |normal t| |00001f20| 68 72 6f 77 2e 20 20 54 | 68 69 73 20 76 61 72 69 |hrow. T|his vari| |00001f30| 61 6e 74 20 73 69 67 6e | 61 6c 73 0d 09 74 68 61 |ant sign|als..tha| |00001f40| 74 20 74 68 65 20 73 61 | 76 65 64 20 65 72 72 6f |t the sa|ved erro| |00001f50| 72 20 69 6e 66 6f 20 69 | 73 20 76 61 6c 69 64 2e |r info i|s valid.| |00001f60| 20 20 4f 75 72 20 64 65 | 66 61 75 6c 74 20 65 72 | Our de|fault er| |00001f70| 72 6f 72 20 68 61 6e 64 | 6c 65 72 20 44 46 4c 54 |ror hand|ler DFLT| |00001f80| 5f 44 49 45 2c 0d 09 77 | 68 69 63 68 20 69 73 20 |_DIE,..w|hich is | |00001f90| 63 61 6c 6c 65 64 20 69 | 66 20 6e 6f 20 74 68 72 |called i|f no thr| |00001fa0| 6f 77 20 68 61 6e 64 6c | 65 72 20 68 61 73 20 62 |ow handl|er has b| |00001fb0| 65 65 6e 20 69 6e 73 74 | 61 6c 6c 65 64 2c 20 74 |een inst|alled, t| |00001fc0| 65 73 74 73 20 74 68 69 | 73 20 66 6c 61 67 0d 09 |ests thi|s flag..| |00001fd0| 74 6f 20 64 65 63 69 64 | 65 20 77 68 65 74 68 65 |to decid|e whethe| |00001fe0| 72 20 74 6f 20 63 61 6c | 6c 20 2e 45 52 52 20 74 |r to cal|l .ERR t| |00001ff0| 6f 20 64 69 73 70 6c 61 | 79 20 74 68 65 20 69 6e |o displa|y the in| |00002000| 66 6f 2e 0d 20 0d 09 49 | 66 20 54 48 52 4f 57 20 |fo.. ..I|f THROW | |00002010| 69 73 20 63 61 6c 6c 65 | 64 20 64 69 72 65 63 74 |is calle|d direct| |00002020| 6c 79 20 66 72 6f 6d 20 | 63 6f 64 65 2c 20 69 74 |ly from |code, it| |00002030| 20 66 6c 61 67 73 20 74 | 68 65 20 65 72 72 6f 72 | flags t|he error| |00002040| 20 69 6e 66 6f 20 69 6e | 76 61 6c 69 64 2c 0d 09 | info in|valid,..| |00002050| 77 68 69 63 68 20 70 72 | 65 76 65 6e 74 73 20 44 |which pr|events D| |00002060| 46 4c 54 5f 44 49 45 20 | 66 72 6f 6d 20 63 61 6c |FLT_DIE |from cal| |00002070| 6c 69 6e 67 20 2e 45 52 | 52 20 61 6e 64 20 64 69 |ling .ER|R and di| |00002080| 73 70 6c 61 79 69 6e 67 | 20 73 70 75 72 69 6f 75 |splaying| spuriou| |00002090| 73 20 69 6e 66 6f 2e 0d | 2a 29 0d 0d 3a 70 70 63 |s info..|*)..:ppc| |000020a0| 5f 63 6f 64 65 20 28 54 | 48 52 4f 57 29 0d 09 72 |_code (T|HROW)..r| |000020b0| 34 09 09 30 09 63 6d 70 | 6c 69 2c 09 09 09 5c 20 |4..0.cmp|li,...\ | |000020c0| 69 73 20 54 48 52 4f 57 | 20 63 6f 64 65 20 6e 6f |is THROW| code no| |000020d0| 6e 7a 65 72 6f 0d 0d 6e | 65 20 69 66 2c 09 09 09 |nzero..n|e if,...| |000020e0| 09 09 09 09 5c 20 79 65 | 73 20 2d 20 77 65 20 64 |....\ ye|s - we d| |000020f0| 6f 20 74 68 65 20 74 68 | 72 6f 77 3a 0d 20 09 72 |o the th|row:. .r| |00002100| 58 09 27 20 74 68 72 6f | 77 5f 68 61 6e 64 6c 65 |X.' thro|w_handle| |00002110| 72 20 32 2b 20 40 61 62 | 73 36 20 20 64 69 63 61 |r 2+ @ab|s6 dica| |00002120| 64 64 72 0d 20 09 09 09 | 09 09 09 6c 77 7a 2c 09 |ddr. ...|...lwz,.| |00002130| 5c 20 72 65 73 74 6f 72 | 65 20 70 72 65 76 69 6f |\ restor|e previo| |00002140| 75 73 20 74 68 72 6f 77 | 5f 68 61 6e 64 6c 65 72 |us throw|_handler| |00002150| 0d 09 72 58 09 09 30 09 | 63 6d 70 6c 69 2c 09 09 |..rX..0.|cmpli,..| |00002160| 09 5c 20 69 73 20 74 68 | 65 72 65 20 61 20 74 68 |.\ is th|ere a th| |00002170| 72 6f 77 20 68 61 6e 64 | 6c 65 72 3f 0d 0d 20 6e |row hand|ler?.. n| |00002180| 65 20 69 66 2c 0d 09 72 | 30 09 09 30 09 72 58 09 |e if,..r|0..0.rX.| |00002190| 09 6c 77 7a 2c 09 5c 20 | 63 68 65 63 6b 20 6f 75 |.lwz,.\ |check ou| |000021a0| 72 20 73 70 65 63 69 61 | 6c 20 6d 61 72 6b 65 72 |r specia|l marker| |000021b0| 20 69 73 20 73 74 69 6c | 6c 0d 09 72 30 09 09 24 | is stil|l..r0..$| |000021c0| 20 37 38 39 41 09 09 63 | 6d 70 6c 69 2c 09 5c 20 | 789A..c|mpli,.\ | |000021d0| 20 6f 6e 20 74 6f 70 20 | 6f 66 20 72 74 6e 20 73 | on top |of rtn s| |000021e0| 74 6b 0d 20 20 65 71 20 | 69 66 2c 09 09 09 09 09 |tk. eq |if,.....| |000021f0| 09 5c 20 79 65 70 2c 20 | 61 6c 6c 20 4f 4b 0d 20 |.\ yep, |all OK. | |00002200| 20 09 72 52 50 09 09 72 | 58 09 09 09 6d 72 2c 09 | .rRP..r|X...mr,.| |00002210| 09 5c 20 73 65 74 20 52 | 50 20 74 6f 20 70 6f 69 |.\ set R|P to poi| |00002220| 6e 74 20 74 6f 20 68 61 | 6e 64 6c 65 72 20 66 72 |nt to ha|ndler fr| |00002230| 61 6d 65 0d 20 20 09 09 | 09 09 09 09 09 09 5c 20 |ame. ..|......\ | |00002240| 4e 6f 77 20 77 65 20 72 | 65 73 74 6f 72 65 20 65 |Now we r|estore e| |00002250| 76 65 72 79 74 68 69 6e | 67 20 66 72 6f 6d 20 74 |verythin|g from t| |00002260| 68 65 20 66 72 61 6d 65 | 3a 0d 20 20 09 72 53 50 |he frame|:. .rSP| |00002270| 09 09 34 09 72 52 50 09 | 09 6c 77 7a 2c 09 5c 20 |..4.rRP.|.lwz,.\ | |00002280| 72 53 50 20 66 72 6f 6d | 20 6f 66 66 73 20 34 0d |rSP from| offs 4.| |00002290| 20 20 20 09 72 30 09 09 | 38 09 72 52 50 09 09 6c | .r0..|8.rRP..l| |000022a0| 77 7a 2c 0d 20 09 72 30 | 09 27 20 74 68 72 6f 77 |wz,. .r0|.' throw| |000022b0| 5f 68 61 6e 64 6c 65 72 | 20 32 2b 20 40 61 62 73 |_handler| 2+ @abs| |000022c0| 36 20 20 64 69 63 61 64 | 64 72 0d 20 09 09 09 09 |6 dicad|dr. ....| |000022d0| 09 09 73 74 77 2c 09 5c | 20 61 6e 64 20 70 72 65 |..stw,.\| and pre| |000022e0| 76 69 6f 75 73 20 74 68 | 72 6f 77 5f 68 61 6e 64 |vious th|row_hand| |000022f0| 6c 65 72 20 66 72 6f 6d | 20 6f 66 66 73 20 38 0d |ler from| offs 8.| |00002300| 20 09 72 52 50 09 09 31 | 30 34 09 09 09 61 64 64 | .rRP..1|04...add| |00002310| 69 2c 0d 20 09 27 20 66 | 72 65 73 74 6f 72 65 73 |i,. .' f|restores| |00002320| 20 32 2b 09 09 62 6c 2c | 09 09 5c 20 72 65 73 74 | 2+..bl,|..\ rest| |00002330| 6f 72 65 20 46 50 52 20 | 6c 6f 63 61 6c 73 0d 20 |ore FPR |locals. | |00002340| 09 72 52 50 09 09 34 38 | 09 09 09 61 64 64 69 2c |.rRP..48|...addi,| |00002350| 0d 20 09 27 20 72 65 73 | 74 6f 72 65 73 20 32 2b |. .' res|tores 2+| |00002360| 09 09 62 6c 2c 09 09 5c | 20 61 6e 64 20 47 50 52 |..bl,..\| and GPR| |00002370| 20 6c 6f 63 61 6c 73 0d | 20 09 72 52 50 09 09 31 | locals.| .rRP..1| |00002380| 36 09 09 09 61 64 64 69 | 2c 09 5c 20 64 65 6c 65 |6...addi|,.\ dele| |00002390| 74 65 20 72 65 73 74 20 | 6f 66 20 66 72 61 6d 65 |te rest |of frame| |000023a0| 0d 0d 20 09 72 30 09 09 | 2d 34 09 72 52 50 09 09 |.. .r0..|-4.rRP..| |000023b0| 6c 77 7a 2c 09 5c 20 72 | 65 73 74 6f 72 65 20 6c |lwz,.\ r|estore l| |000023c0| 72 0d 20 09 72 30 09 09 | 09 09 09 6d 74 6c 72 2c |r. .r0..|...mtlr,| |000023d0| 0d 20 09 72 33 09 09 2d | 31 36 20 72 52 50 09 09 |. .r3..-|16 rRP..| |000023e0| 6c 77 7a 2c 09 5c 20 61 | 6e 64 20 63 61 63 68 65 |lwz,.\ a|nd cache| |000023f0| 64 20 73 74 61 63 6b 20 | 63 65 6c 6c 20 28 72 33 |d stack |cell (r3| |00002400| 29 0d 20 09 09 09 09 09 | 09 62 6c 72 2c 09 5c 20 |). .....|.blr,.\ | |00002410| 61 6e 64 20 72 65 74 75 | 72 6e 20 74 6f 20 43 41 |and retu|rn to CA| |00002420| 54 43 48 20 63 61 6c 6c | 65 72 0d 0d 20 20 74 68 |TCH call|er.. th| |00002430| 65 6e 2c 0d 09 09 27 20 | 66 72 61 6d 65 45 72 72 |en,...' |frameErr| |00002440| 20 32 2b 09 62 2c 09 09 | 5c 20 72 74 6e 20 73 74 | 2+.b,..|\ rtn st| |00002450| 6b 20 6d 61 72 6b 65 72 | 20 6e 6f 74 20 74 68 65 |k marker| not the| |00002460| 72 65 20 2d 20 63 61 6c | 6c 20 66 72 61 6d 65 45 |re - cal|l frameE| |00002470| 72 72 0d 20 74 68 65 6e | 2c 0d 20 09 09 27 20 6e |rr. then|,. ..' n| |00002480| 6f 5f 74 68 72 6f 77 5f | 68 61 6e 64 6c 65 72 20 |o_throw_|handler | |00002490| 32 2b 09 62 2c 09 09 5c | 20 6e 6f 20 74 68 72 6f |2+.b,..\| no thro| |000024a0| 77 20 68 61 6e 64 6c 65 | 72 3a 20 74 61 6b 65 20 |w handle|r: take | |000024b0| 64 65 66 61 75 6c 74 20 | 61 63 74 69 6f 6e 0d 74 |default |action.t| |000024c0| 68 65 6e 2c 0d 0d 09 72 | 34 09 09 72 33 09 09 09 |hen,...r|4..r3...| |000024d0| 6d 72 2c 09 09 5c 20 74 | 68 72 6f 77 20 63 6f 64 |mr,..\ t|hrow cod| |000024e0| 65 20 7a 65 72 6f 20 2d | 20 6e 6f 20 65 72 72 6f |e zero -| no erro| |000024f0| 72 20 2d 20 6a 75 73 74 | 20 64 72 6f 70 0d 09 72 |r - just| drop..r| |00002500| 33 09 09 30 09 72 53 50 | 09 09 6c 77 7a 2c 09 5c |3..0.rSP|..lwz,.\| |00002510| 20 20 74 68 65 20 7a 65 | 72 6f 20 61 6e 64 20 72 | the ze|ro and r| |00002520| 65 74 75 72 6e 2e 0d 09 | 72 53 50 09 09 72 53 50 |eturn...|rSP..rSP| |00002530| 09 34 09 09 61 64 64 69 | 2c 0d 09 09 09 09 09 09 |.4..addi|,.......| |00002540| 62 6c 72 2c 0d 3b 70 70 | 63 5f 63 6f 64 65 0d 0d |blr,.;pp|c_code..| |00002550| 0d 3a 66 20 54 48 52 4f | 57 0d 09 66 61 6c 73 65 |.:f THRO|W..false| |00002560| 20 2d 3e 20 65 72 72 5f | 69 6e 66 6f 5f 76 61 6c | -> err_|info_val| |00002570| 69 64 3f 20 20 28 74 68 | 72 6f 77 29 0d 3b 66 0d |id? (th|row).;f.| |00002580| 0d 3a 20 54 48 52 4f 57 | 5f 57 49 54 48 5f 49 4e |.: THROW|_WITH_IN| |00002590| 46 4f 0d 09 74 72 75 65 | 20 2d 3e 20 65 72 72 5f |FO..true| -> err_| |000025a0| 69 6e 66 6f 5f 76 61 6c | 69 64 3f 20 20 28 74 68 |info_val|id? (th| |000025b0| 72 6f 77 29 0d 3b 0d 0d | 0d 3a 20 41 42 4f 52 54 |row).;..|.: ABORT| |000025c0| 0d 09 30 20 30 20 73 61 | 76 65 5f 65 72 72 20 20 |..0 0 sa|ve_err | |000025d0| 2d 31 20 74 68 72 6f 77 | 20 20 3b 0d 0d 0d 28 2a |-1 throw| ;...(*| |000025e0| 09 41 42 4f 52 54 22 20 | 69 73 20 69 6d 6d 65 64 |.ABORT" |is immed| |000025f0| 69 61 74 65 2c 20 73 6f | 20 77 65 27 76 65 20 61 |iate, so| we've a| |00002600| 6c 72 65 61 64 79 20 64 | 65 66 69 6e 65 64 20 69 |lready d|efined i| |00002610| 74 20 62 65 66 6f 72 65 | 20 43 52 4f 53 53 0d 09 |t before| CROSS..| |00002620| 69 6e 20 71 43 6f 6e 64 | 2e 20 20 49 74 20 67 65 |in qCond|. It ge| |00002630| 74 73 20 74 68 65 20 73 | 74 72 69 6e 67 20 70 61 |ts the s|tring pa| |00002640| 72 61 6d 65 74 65 72 2c | 20 74 68 65 6e 20 45 56 |rameter,| then EV| |00002650| 41 4c 55 41 54 45 73 20 | 64 6f 5f 61 62 71 0d 09 |ALUATEs |do_abq..| |00002660| 77 68 69 63 68 20 77 65 | 20 64 65 66 69 6e 65 20 |which we| define | |00002670| 68 65 72 65 2e 20 20 57 | 68 61 74 20 77 65 20 65 |here. W|hat we e| |00002680| 6e 64 20 75 70 20 64 6f | 69 6e 67 20 69 73 20 69 |nd up do|ing is i| |00002690| 6e 20 65 66 66 65 63 74 | 20 74 68 69 73 3a 0d 0d |n effect| this:..| |000026a0| 09 09 3a 20 41 42 4f 52 | 54 22 0d 09 09 09 70 6f |..: ABOR|T"....po| |000026b0| 73 74 70 6f 6e 65 20 22 | 0d 09 09 09 72 6f 74 20 |stpone "|....rot | |000026c0| 4e 49 46 20 20 32 64 72 | 6f 70 20 20 45 58 49 54 |NIF 2dr|op EXIT| |000026d0| 20 20 54 48 45 4e 0d 09 | 09 09 73 61 76 65 5f 65 | THEN..|..save_e| |000026e0| 72 72 20 20 2d 32 20 74 | 68 72 6f 77 5f 77 69 74 |rr -2 t|hrow_wit| |000026f0| 68 5f 69 6e 66 6f 20 20 | 3b 09 09 69 6d 6d 65 64 |h_info |;..immed| |00002700| 69 61 74 65 0d 2a 29 0d | 0d 3a 20 64 6f 5f 61 62 |iate.*).|.: do_ab| |00002710| 71 0d 09 72 6f 74 20 4e | 49 46 20 20 32 64 72 6f |q..rot N|IF 2dro| |00002720| 70 20 20 45 58 49 54 20 | 20 54 48 45 4e 0d 09 73 |p EXIT | THEN..s| |00002730| 61 76 65 5f 65 72 72 20 | 2d 32 20 74 68 72 6f 77 |ave_err |-2 throw| |00002740| 5f 77 69 74 68 5f 69 6e | 66 6f 20 20 3b 0d 0d 30 |_with_in|fo ;..0| |00002750| 09 76 61 6c 75 65 09 73 | 76 45 72 72 4e 75 6d 0d |.value.s|vErrNum.| |00002760| 0d 3a 66 20 44 49 45 0d | 09 64 75 70 20 2d 3e 20 |.:f DIE.|.dup -> | |00002770| 73 76 45 72 72 4e 75 6d | 20 20 2d 31 20 73 61 76 |svErrNum| -1 sav| |00002780| 65 5f 65 72 72 09 5c 20 | 2d 31 20 69 6e 64 69 63 |e_err.\ |-1 indic| |00002790| 61 74 65 73 20 74 6f 20 | 73 61 76 65 5f 65 72 72 |ates to |save_err| |000027a0| 20 74 68 61 74 0d 09 09 | 09 09 09 09 09 09 09 5c | that...|.......\| |000027b0| 20 20 74 68 69 73 20 69 | 73 20 61 6e 20 65 72 72 | this i|s an err| |000027c0| 23 0d 09 73 76 45 72 72 | 4e 75 6d 20 20 74 68 72 |#..svErr|Num thr| |000027d0| 6f 77 5f 77 69 74 68 5f | 69 6e 66 6f 0d 3b 66 0d |ow_with_|info.;f.| |000027e0| 0d 0d 28 2a 20 2a 2a 2a | 2a 0d 0d 5c 20 54 48 52 |..(* ***|*..\ THR| |000027f0| 4f 57 20 74 65 73 74 3a | 0d 0d 3a 20 63 6f 75 6c |OW test:|..: coul| |00002800| 64 2d 66 61 69 6c 20 20 | 6b 65 79 20 64 75 70 20 |d-fail |key dup | |00002810| 20 26 20 41 20 3d 20 69 | 66 20 20 24 20 31 32 33 | & A = i|f $ 123| |00002820| 34 20 74 68 72 6f 77 20 | 20 74 68 65 6e 20 20 3b |4 throw | then ;| |00002830| 0d 0d 3a 20 64 6f 69 74 | 09 63 6f 75 6c 64 2d 66 |..: doit|.could-f| |00002840| 61 69 6c 20 20 6e 69 70 | 20 6e 69 70 20 6e 69 70 |ail nip| nip nip| |00002850| 20 20 3b 0d 0d 3a 20 74 | 68 72 6f 77 74 65 73 74 | ;..: t|hrowtest| |00002860| 0d 64 62 67 72 0d 09 31 | 20 32 20 33 20 5b 27 5d |.dbgr..1| 2 3 [']| |00002870| 20 64 6f 69 74 20 63 61 | 74 63 68 0d 5c 20 69 66 | doit ca|tch.\ if| |00002880| 20 74 68 65 72 65 27 73 | 20 6e 6f 20 74 68 72 6f | there's| no thro| |00002890| 77 2c 20 74 68 65 20 31 | 20 32 20 33 20 77 69 6c |w, the 1| 2 3 wil| |000028a0| 6c 20 62 65 20 64 72 6f | 70 70 65 64 2c 20 61 6e |l be dro|pped, an| |000028b0| 64 20 77 65 27 6c 6c 20 | 67 65 74 0d 5c 20 20 74 |d we'll |get.\ t| |000028c0| 68 65 20 74 79 70 65 64 | 20 6b 65 79 2e 20 20 49 |he typed| key. I| |000028d0| 66 20 74 68 72 6f 77 20 | 69 73 20 65 78 65 63 75 |f throw |is execu| |000028e0| 74 65 64 2c 20 77 65 20 | 73 68 6f 75 6c 64 20 67 |ted, we |should g| |000028f0| 65 74 20 74 68 65 20 31 | 20 32 20 33 0d 5c 20 20 |et the 1| 2 3.\ | |00002900| 61 6e 64 20 74 68 65 20 | 65 72 72 6f 72 20 6e 75 |and the |error nu| |00002910| 6d 62 65 72 20 24 20 31 | 32 33 34 20 6f 6e 20 74 |mber $ 1|234 on t| |00002920| 68 65 20 73 74 61 63 6b | 2e 0d 0d 64 62 67 72 20 |he stack|...dbgr | |00002930| 64 75 70 0d 09 49 46 09 | 09 2e 22 20 45 72 72 6f |dup..IF.|.." Erro| |00002940| 72 20 77 61 73 20 74 68 | 72 6f 77 6e 22 20 63 72 |r was th|rown" cr| |00002950| 20 2e 73 0d 09 45 4c 53 | 45 09 64 72 6f 70 20 20 | .s..ELS|E.drop | |00002960| 2e 22 20 54 68 65 20 63 | 68 61 72 20 77 61 73 20 |." The c|har was | |00002970| 22 20 65 6d 69 74 20 63 | 72 0d 09 54 48 45 4e 20 |" emit c|r..THEN | |00002980| 20 3b 0d 0d 2a 2a 2a 2a | 20 2a 29 0d 0d 0d 3a 20 | ;..****| *)...: | |00002990| 3f 43 4f 4d 50 0d 09 73 | 74 61 74 65 20 20 3f 45 |?COMP..s|tate ?E| |000029a0| 58 49 54 0d 09 2d 31 34 | 20 64 69 65 20 20 3b 0d |XIT..-14| die ;.| |000029b0| 0d 0d 3a 20 3f 53 54 41 | 43 4b 0d 09 64 65 70 74 |..: ?STA|CK..dept| |000029c0| 68 20 64 75 70 20 30 3c | 0d 09 49 46 20 20 2d 34 |h dup 0<|..IF -4| |000029d0| 20 64 69 65 20 20 54 48 | 45 4e 09 09 09 09 09 5c | die TH|EN.....\| |000029e0| 20 22 73 74 61 63 6b 20 | 75 6e 64 65 72 66 6c 6f | "stack |underflo| |000029f0| 77 22 0d 09 73 74 61 63 | 6b 5f 73 69 7a 65 20 3e |w"..stac|k_size >| |00002a00| 3d 20 49 46 20 20 2d 35 | 20 64 69 65 20 20 54 48 |= IF -5| die TH| |00002a10| 45 4e 09 09 5c 20 22 73 | 74 61 63 6b 20 6f 76 65 |EN..\ "s|tack ove| |00002a20| 72 66 6c 6f 77 22 0d 09 | 66 64 65 70 74 68 20 64 |rflow"..|fdepth d| |00002a30| 75 70 20 30 3c 0d 09 49 | 46 20 20 2d 34 35 20 64 |up 0<..I|F -45 d| |00002a40| 69 65 20 20 54 48 45 4e | 09 09 09 09 09 5c 20 22 |ie THEN|.....\ "| |00002a50| 66 6c 6f 61 74 69 6e 67 | 2d 70 6f 69 6e 74 20 73 |floating|-point s| |00002a60| 74 61 63 6b 20 75 6e 64 | 65 72 66 6c 6f 77 22 0d |tack und|erflow".| |00002a70| 09 66 73 74 61 63 6b 5f | 73 69 7a 65 20 3e 3d 20 |.fstack_|size >= | |00002a80| 49 46 20 20 2d 34 34 20 | 64 69 65 20 20 54 48 45 |IF -44 |die THE| |00002a90| 4e 09 5c 20 22 66 6c 6f | 61 74 69 6e 67 2d 70 6f |N.\ "flo|ating-po| |00002aa0| 69 6e 74 20 73 74 61 63 | 6b 20 6f 76 65 72 66 6c |int stac|k overfl| |00002ab0| 6f 77 22 0d 3b 0d 0d 3a | 20 3f 45 58 45 43 0d 09 |ow".;..:| ?EXEC..| |00002ac0| 73 74 61 74 65 20 20 30 | 45 58 49 54 0d 09 37 37 |state 0|EXIT..77| |00002ad0| 20 64 69 65 20 20 3b 09 | 09 5c 20 22 45 78 65 63 | die ;.|.\ "Exec| |00002ae0| 75 74 69 6f 6e 20 73 74 | 61 74 65 20 6f 6e 6c 79 |ution st|ate only| |00002af0| 22 0d 0d 3a 20 3f 50 41 | 49 52 53 0d 09 3d 20 3f |"..: ?PA|IRS..= ?| |00002b00| 45 58 49 54 0d 09 2d 32 | 32 20 64 69 65 20 20 3b |EXIT..-2|2 die ;| |00002b10| 09 09 5c 20 22 43 6f 6e | 74 72 6f 6c 20 73 74 72 |..\ "Con|trol str| |00002b20| 75 63 74 75 72 65 20 6d | 69 73 6d 61 74 63 68 22 |ucture m|ismatch"| |00002b30| 0d 0d 0d 3a 20 3f 44 45 | 46 4e 0d 09 3d 20 3f 45 |...: ?DE|FN..= ?E| |00002b40| 58 49 54 0d 09 37 38 20 | 64 69 65 20 20 3b 09 09 |XIT..78 |die ;..| |00002b50| 5c 20 22 55 6e 62 61 6c | 61 6e 63 65 64 20 64 65 |\ "Unbal|anced de| |00002b60| 66 69 6e 69 74 69 6f 6e | 22 0d 0d 28 2a 0d 09 28 |finition|"..(*..(| |00002b70| 65 78 63 65 70 29 20 69 | 73 20 62 72 61 6e 63 68 |excep) i|s branch| |00002b80| 65 64 20 74 6f 20 66 72 | 6f 6d 20 6f 75 72 20 65 |ed to fr|om our e| |00002b90| 78 63 65 70 74 69 6f 6e | 20 68 61 6e 64 6c 65 72 |xception| handler| |00002ba0| 20 69 6e 20 7a 4f 62 6a | 49 6e 69 74 2e 0d 09 57 | in zObj|Init...W| |00002bb0| 65 20 64 6f 6e 27 74 20 | 72 65 61 6c 6c 79 20 6b |e don't |really k| |00002bc0| 6e 6f 77 20 77 68 69 63 | 68 20 72 65 67 73 20 68 |now whic|h regs h| |00002bd0| 65 6c 64 20 74 68 65 20 | 74 6f 70 20 73 74 61 63 |eld the |top stac| |00002be0| 6b 20 63 65 6c 6c 73 20 | 77 68 65 6e 20 74 68 65 |k cells |when the| |00002bf0| 0d 09 65 78 63 65 70 74 | 69 6f 6e 20 6f 63 63 75 |..except|ion occu| |00002c00| 72 72 65 64 2c 20 73 6f | 20 77 65 20 6a 75 73 74 |rred, so| we just| |00002c10| 20 74 61 6b 65 20 61 73 | 20 73 74 61 62 20 74 68 | take as| stab th| |00002c20| 61 74 20 69 74 20 77 61 | 73 20 72 33 20 61 6e 64 |at it wa|s r3 and| |00002c30| 20 72 34 2e 0d 09 54 68 | 65 20 65 78 63 65 70 74 | r4...Th|e except| |00002c40| 69 6f 6e 20 68 61 6e 64 | 6c 65 72 20 6c 65 61 76 |ion hand|ler leav| |00002c50| 65 73 20 74 68 65 20 65 | 78 63 65 70 20 63 6f 64 |es the e|xcep cod| |00002c60| 65 20 69 6e 20 72 35 2e | 20 20 53 6f 20 77 65 20 |e in r5.| So we | |00002c70| 73 65 74 20 75 70 0d 09 | 28 65 78 63 65 70 29 20 |set up..|(excep) | |00002c80| 77 69 74 68 20 33 20 6e | 61 6d 65 64 20 70 61 72 |with 3 n|amed par| |00002c90| 6d 73 2c 20 77 68 69 63 | 68 20 77 69 6c 6c 20 62 |ms, whic|h will b| |00002ca0| 65 20 72 33 2c 20 72 34 | 20 61 6e 64 20 72 35 2e |e r3, r4| and r5.| |00002cb0| 0d 09 0d 09 48 65 72 65 | 27 73 20 41 70 70 6c 65 |....Here|'s Apple| |00002cc0| 27 73 20 64 65 66 6e 20 | 6f 66 20 74 68 65 20 65 |'s defn |of the e| |00002cd0| 78 63 65 70 74 69 6f 6e | 20 63 6f 64 65 73 3a 0d |xception| codes:.| |00002ce0| 0d 09 6b 55 6e 6b 6e 6f | 77 6e 45 78 63 65 70 74 |..kUnkno|wnExcept| |00002cf0| 69 6f 6e 09 09 09 09 3d | 20 30 0d 09 6b 49 6c 6c |ion....=| 0..kIll| |00002d00| 65 67 61 6c 49 6e 73 74 | 72 75 63 74 69 6f 6e 45 |egalInst|ructionE| |00002d10| 78 63 65 70 74 69 6f 6e | 20 09 3d 20 31 0d 09 6b |xception| .= 1..k| |00002d20| 54 72 61 70 45 78 63 65 | 70 74 69 6f 6e 09 09 09 |TrapExce|ption...| |00002d30| 09 09 3d 20 32 0d 09 6b | 41 63 63 65 73 73 45 78 |..= 2..k|AccessEx| |00002d40| 63 65 70 74 69 6f 6e 09 | 09 09 09 3d 20 33 0d 09 |ception.|...= 3..| |00002d50| 6b 55 6e 6d 61 70 70 65 | 64 4d 65 6d 6f 72 79 45 |kUnmappe|dMemoryE| |00002d60| 78 63 65 70 74 69 6f 6e | 09 09 3d 20 34 0d 09 6b |xception|..= 4..k| |00002d70| 45 78 63 6c 75 64 65 64 | 4d 65 6d 6f 72 79 45 78 |Excluded|MemoryEx| |00002d80| 63 65 70 74 69 6f 6e 09 | 09 3d 20 35 0d 09 6b 52 |ception.|.= 5..kR| |00002d90| 65 61 64 4f 6e 6c 79 4d | 65 6d 6f 72 79 45 78 63 |eadOnlyM|emoryExc| |00002da0| 65 70 74 69 6f 6e 09 09 | 3d 20 36 0d 09 6b 55 6e |eption..|= 6..kUn| |00002db0| 72 65 73 6f 6c 76 61 62 | 6c 65 50 61 67 65 46 61 |resolvab|lePageFa| |00002dc0| 75 6c 74 45 78 63 65 70 | 74 69 6f 6e 20 3d 20 37 |ultExcep|tion = 7| |00002dd0| 0d 09 6b 50 72 69 76 69 | 6c 65 67 65 56 69 6f 6c |..kPrivi|legeViol| |00002de0| 61 74 69 6f 6e 45 78 63 | 65 70 74 69 6f 6e 20 09 |ationExc|eption .| |00002df0| 3d 20 38 0d 09 6b 54 72 | 61 63 65 45 78 63 65 70 |= 8..kTr|aceExcep| |00002e00| 74 69 6f 6e 09 09 09 09 | 09 3d 20 39 0d 09 6b 49 |tion....|.= 9..kI| |00002e10| 6e 73 74 72 75 63 74 69 | 6f 6e 42 72 65 61 6b 70 |nstructi|onBreakp| |00002e20| 6f 69 6e 74 45 78 63 65 | 70 74 69 6f 6e 20 3d 20 |ointExce|ption = | |00002e30| 31 30 0d 09 6b 44 61 74 | 61 42 72 65 61 6b 70 6f |10..kDat|aBreakpo| |00002e40| 69 6e 74 45 78 63 65 70 | 74 69 6f 6e 09 09 3d 20 |intExcep|tion..= | |00002e50| 31 31 0d 09 6b 49 6e 74 | 65 67 65 72 45 78 63 65 |11..kInt|egerExce| |00002e60| 70 74 69 6f 6e 09 09 09 | 09 3d 20 31 32 0d 09 6b |ption...|.= 12..k| |00002e70| 46 6c 6f 61 74 69 6e 67 | 50 6f 69 6e 74 45 78 63 |Floating|PointExc| |00002e80| 65 70 74 69 6f 6e 09 09 | 09 3d 20 31 33 0d 09 6b |eption..|.= 13..k| |00002e90| 53 74 61 63 6b 4f 76 65 | 72 66 6c 6f 77 45 78 63 |StackOve|rflowExc| |00002ea0| 65 70 74 69 6f 6e 09 09 | 09 3d 20 31 34 0d 09 6b |eption..|.= 14..k| |00002eb0| 54 65 72 6d 69 6e 61 74 | 69 6f 6e 45 78 63 65 70 |Terminat|ionExcep| |00002ec0| 74 69 6f 6e 09 09 09 3d | 20 31 35 0d 2a 29 0d 0d |tion...=| 15.*)..| |00002ed0| 3a 20 28 65 78 63 65 70 | 29 20 20 7b 20 78 20 79 |: (excep|) { x y| |00002ee0| 20 65 78 23 20 2d 2d 20 | 20 7d 0d 09 78 20 79 0d | ex# -- | }..x y.| |00002ef0| 09 65 78 23 20 32 31 30 | 20 2b 20 20 64 69 65 09 |.ex# 210| + die.| |00002f00| 09 5c 20 77 65 20 6a 75 | 73 74 20 61 73 73 69 67 |.\ we ju|st assig| |00002f10| 6e 20 61 6c 6c 20 74 68 | 65 20 6d 65 73 73 61 67 |n all th|e messag| |00002f20| 65 20 6e 75 6d 62 65 72 | 73 20 61 70 70 72 6f 70 |e number|s approp| |00002f30| 72 69 61 74 65 6c 79 0d | 09 09 09 09 09 09 5c 20 |riately.|......\ | |00002f40| 20 73 6f 20 77 65 20 64 | 6f 6e 27 74 20 68 61 76 | so we d|on't hav| |00002f50| 65 20 74 6f 20 64 6f 20 | 61 6e 79 20 6f 74 68 65 |e to do |any othe| |00002f60| 72 20 74 65 73 74 69 6e | 67 20 6f 6e 20 74 68 65 |r testin|g on the| |00002f70| 0d 09 09 09 09 09 09 5c | 20 20 6e 75 6d 62 65 72 |.......\| number| |00002f80| 2e 0d 3b 0d 0d 0d 0d 5c | 09 3d 3d 3d 3d 3d 3d 3d |..;....\|.=======| |00002f90| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 20 20 41 |========|===== A| |00002fa0| 44 44 52 45 53 53 49 4e | 47 20 20 3d 3d 3d 3d 3d |DDRESSIN|G =====| |00002fb0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========| |00002fc0| 0d 0d 0d 5c 20 31 36 62 | 69 74 73 3f 20 28 20 6e |...\ 16b|its? ( n| |00002fd0| 20 73 69 67 6e 65 64 3f | 20 2d 2d 20 6e 20 62 20 | signed?| -- n b | |00002fe0| 29 0d 5c 20 20 72 65 74 | 75 72 6e 73 20 74 72 75 |).\ ret|urns tru| |00002ff0| 65 20 69 66 20 6e 20 77 | 69 6c 6c 20 66 69 74 20 |e if n w|ill fit | |00003000| 69 6e 20 31 36 20 62 69 | 74 73 20 28 73 69 67 6e |in 16 bi|ts (sign| |00003010| 65 64 20 6f 72 20 75 6e | 73 69 67 6e 65 64 20 61 |ed or un|signed a| |00003020| 73 20 72 65 71 75 65 73 | 74 65 64 29 2e 0d 0d 3a |s reques|ted)...:| |00003030| 20 31 36 42 49 54 53 3f | 09 5c 20 28 20 6e 20 73 | 16BITS?|.\ ( n s| |00003040| 69 67 6e 65 64 3f 20 2d | 2d 20 6e 20 62 20 29 0d |igned? -|- n b ).| |00003050| 09 49 46 09 2d 33 32 37 | 36 38 20 33 32 37 36 37 |.IF.-327|68 32767| |00003060| 20 20 77 69 74 68 69 6e | 3f 0d 09 45 4c 53 45 0d | within|?..ELSE.| |00003070| 09 09 64 75 70 20 31 36 | 20 3e 3e 20 30 3d 0d 09 |..dup 16| >> 0=..| |00003080| 54 48 45 4e 0d 3b 0d 0d | 5c 20 73 65 67 23 3e 67 |THEN.;..|\ seg#>g| |00003090| 70 72 23 20 66 69 6e 64 | 73 20 69 66 20 74 68 65 |pr# find|s if the| |000030a0| 20 70 61 73 73 65 64 2d | 69 6e 20 73 65 67 23 20 | passed-|in seg# | |000030b0| 63 6f 72 72 65 73 70 6f | 6e 64 73 20 74 6f 20 61 |correspo|nds to a| |000030c0| 20 63 75 72 72 65 6e 74 | 6c 79 0d 5c 20 20 73 65 | current|ly.\ se| |000030d0| 74 20 75 70 20 62 61 73 | 65 20 72 65 67 69 73 74 |t up bas|e regist| |000030e0| 65 72 2e 20 20 49 66 20 | 73 6f 2c 20 69 74 20 72 |er. If |so, it r| |000030f0| 65 74 75 72 6e 73 20 74 | 68 65 20 72 65 67 23 2e |eturns t|he reg#.| |00003100| 20 20 49 66 20 6e 6f 74 | 2c 20 69 74 0d 5c 20 20 | If not|, it.\ | |00003110| 72 65 74 75 72 6e 73 20 | 7a 65 72 6f 2e 0d 0d 3a |returns |zero...:| |00003120| 20 73 65 67 23 3e 67 70 | 72 23 09 09 5c 20 28 20 | seg#>gp|r#..\ ( | |00003130| 73 65 67 23 20 2d 2d 20 | 67 70 72 23 20 29 0d 0d |seg# -- |gpr# )..| |00003140| 09 43 41 53 45 5b 20 20 | 38 09 5d 3d 3e 09 09 6d |.CASE[ |8.]=>..m| |00003150| 61 69 6e 43 6f 64 65 5f | 72 65 67 20 20 45 58 49 |ainCode_|reg EXI| |00003160| 54 0d 09 09 5b 20 20 39 | 09 5d 3d 3e 09 09 6d 61 |T...[ 9|.]=>..ma| |00003170| 69 6e 44 61 74 61 5f 72 | 65 67 20 20 45 58 49 54 |inData_r|eg EXIT| |00003180| 0d 09 44 45 46 41 55 4c | 54 3d 3e 0d 09 5d 43 41 |..DEFAUL|T=>..]CA| |00003190| 53 45 0d 0d 20 20 28 20 | 73 65 67 23 20 29 0d 20 |SE.. ( |seg# ). | |000031a0| 20 5c 20 20 68 65 72 65 | 20 77 65 20 64 6f 6e 27 | \ here| we don'| |000031b0| 74 20 75 73 65 20 63 61 | 73 65 5b 20 73 69 6e 63 |t use ca|se[ sinc| |000031c0| 65 20 74 68 65 20 74 65 | 73 74 20 76 61 6c 75 65 |e the te|st value| |000031d0| 73 20 61 72 65 6e 27 74 | 20 63 6f 6e 73 74 61 6e |s aren't| constan| |000031e0| 74 2e 0d 0d 5c 20 64 75 | 70 20 24 20 31 31 20 3d |t...\ du|p $ 11 =| |000031f0| 20 69 66 20 64 62 67 72 | 20 74 68 65 6e 0d 20 20 | if dbgr| then. | |00003200| 09 64 75 70 20 20 6d 6f | 64 5f 73 65 67 23 09 09 |.dup mo|d_seg#..| |00003210| 3d 20 49 46 20 20 64 72 | 6f 70 20 20 6d 6f 64 43 |= IF dr|op modC| |00003220| 6f 64 65 5f 72 65 67 20 | 20 45 58 49 54 20 20 54 |ode_reg | EXIT T| |00003230| 48 45 4e 0d 20 20 09 64 | 75 70 20 20 6d 6f 64 5f |HEN. .d|up mod_| |00003240| 73 65 67 23 20 31 2b 09 | 3d 20 49 46 20 20 64 72 |seg# 1+.|= IF dr| |00003250| 6f 70 20 20 6d 6f 64 44 | 61 74 61 5f 72 65 67 20 |op modD|ata_reg | |00003260| 20 45 58 49 54 20 20 54 | 48 45 4e 0d 20 20 09 64 | EXIT T|HEN. .d| |00003270| 75 70 20 20 63 6f 6d 70 | 5f 73 65 67 23 09 09 3d |up comp|_seg#..=| |00003280| 20 49 46 20 20 64 72 6f | 70 09 6d 6f 64 43 6f 64 | IF dro|p.modCod| |00003290| 65 5f 72 65 67 20 20 45 | 58 49 54 20 20 54 48 45 |e_reg E|XIT THE| |000032a0| 4e 0d 20 20 09 09 20 63 | 6f 6d 70 5f 73 65 67 23 |N. .. c|omp_seg#| |000032b0| 20 31 2b 09 3d 20 49 46 | 09 09 6d 6f 64 44 61 74 | 1+.= IF|..modDat| |000032c0| 61 5f 72 65 67 20 20 45 | 58 49 54 20 20 54 48 45 |a_reg E|XIT THE| |000032d0| 4e 0d 0d 20 20 09 30 09 | 09 09 5c 20 66 61 69 6c |N.. .0.|..\ fail| |000032e0| 65 64 20 2d 20 20 72 65 | 74 75 72 6e 20 7a 65 72 |ed - re|turn zer| |000032f0| 6f 0d 3b 0d 0d 0d 5c 20 | 42 26 44 20 74 61 6b 65 |o.;...\ |B&D take| |00003300| 73 20 74 68 65 20 70 61 | 73 73 65 64 2d 69 6e 20 |s the pa|ssed-in | |00003310| 61 64 64 72 65 73 73 20 | 61 6e 64 20 63 6f 6e 76 |address |and conv| |00003320| 65 72 74 73 20 69 74 20 | 74 6f 20 67 70 72 23 20 |erts it |to gpr# | |00003330| 61 6e 64 20 64 69 73 70 | 6c 61 63 65 6d 65 6e 74 |and disp|lacement| |00003340| 2e 0d 5c 20 57 65 20 61 | 6c 73 6f 20 73 74 6f 72 |..\ We a|lso stor| |00003350| 65 20 74 68 65 20 61 70 | 70 72 6f 70 72 69 61 74 |e the ap|propriat| |00003360| 65 20 73 65 67 6d 65 6e | 74 20 23 20 69 6e 20 73 |e segmen|t # in s| |00003370| 65 67 23 5f 74 6f 5f 75 | 73 65 2c 20 69 6e 20 63 |eg#_to_u|se, in c| |00003380| 61 73 65 20 77 65 27 72 | 65 0d 5c 20 20 67 65 6e |ase we'r|e.\ gen| |00003390| 65 72 61 74 69 6e 67 20 | 61 20 72 65 6c 6f 63 61 |erating |a reloca| |000033a0| 74 61 62 6c 65 20 61 64 | 64 72 2e 0d 0d 30 09 76 |table ad|dr...0.v| |000033b0| 61 6c 75 65 09 73 65 67 | 23 5f 74 6f 5f 75 73 65 |alue.seg|#_to_use| |000033c0| 0d 0d 0d 3a 20 73 26 64 | 3e 62 26 64 20 20 7b 20 |...: s&d|>b&d { | |000033d0| 73 65 67 23 20 64 69 73 | 70 6c 20 5c 20 64 69 73 |seg# dis|pl \ dis| |000033e0| 70 6c 27 20 67 70 72 23 | 20 2d 2d 20 67 70 72 23 |pl' gpr#| -- gpr#| |000033f0| 20 64 69 73 70 6c 27 20 | 7d 0d 0d 09 30 20 2d 3e | displ' |}...0 ->| |00003400| 20 73 65 67 23 5f 74 6f | 5f 75 73 65 0d 09 73 65 | seg#_to|_use..se| |00003410| 67 23 20 73 65 67 23 3e | 67 70 72 23 20 20 2d 3e |g# seg#>|gpr# ->| |00003420| 20 67 70 72 23 09 09 09 | 5c 20 77 69 6c 6c 20 62 | gpr#...|\ will b| |00003430| 65 20 7a 65 72 6f 20 69 | 66 20 77 65 20 64 69 64 |e zero i|f we did| |00003440| 6e 27 74 20 67 65 74 20 | 61 20 72 65 67 0d 0d 09 |n't get |a reg...| |00003450| 67 70 72 23 20 6d 61 69 | 6e 43 6f 64 65 5f 72 65 |gpr# mai|nCode_re| |00003460| 67 20 3d 0d 09 49 46 0d | 09 09 64 69 73 70 6c 20 |g =..IF.|..displ | |00003470| 63 6f 64 65 5f 73 74 61 | 72 74 20 2b 20 6e 75 63 |code_sta|rt + nuc| |00003480| 5f 63 6f 64 65 5f 73 74 | 61 72 74 20 2d 20 20 68 |_code_st|art - h| |00003490| 61 6c 66 5f 64 69 73 70 | 6c 5f 72 61 6e 67 65 20 |alf_disp|l_range | |000034a0| 2d 20 20 2d 3e 20 64 69 | 73 70 6c 27 0d 09 0d 09 |- -> di|spl'....| |000034b0| 09 64 69 73 70 6c 27 20 | 74 72 75 65 20 31 36 62 |.displ' |true 16b| |000034c0| 69 74 73 3f 20 6e 69 70 | 0d 09 09 4e 49 46 09 09 |its? nip|...NIF..| |000034d0| 09 09 5c 20 64 69 73 70 | 6c 27 20 64 6f 65 73 6e |..\ disp|l' doesn| |000034e0| 27 74 20 66 69 74 20 69 | 6e 20 31 36 20 62 69 74 |'t fit i|n 16 bit| |000034f0| 73 2c 20 62 75 74 20 77 | 65 20 6d 69 67 68 74 20 |s, but w|e might | |00003500| 68 61 76 65 0d 09 09 09 | 09 09 09 5c 20 20 61 20 |have....|...\ a | |00003510| 63 6f 6e 73 74 20 64 61 | 74 61 20 70 6f 69 6e 74 |const da|ta point| |00003520| 65 72 20 77 68 69 63 68 | 20 77 65 20 63 61 6e 20 |er which| we can | |00003530| 75 73 65 2e 2e 2e 0d 09 | 09 09 43 44 5f 67 70 72 |use.....|..CD_gpr| |00003540| 23 0d 09 09 09 49 46 09 | 09 09 5c 20 69 66 20 77 |#....IF.|..\ if w| |00003550| 65 27 76 65 20 73 65 74 | 20 69 74 2c 20 77 65 20 |e've set| it, we | |00003560| 75 73 65 20 69 74 2c 20 | 73 69 6e 63 65 20 74 68 |use it, |since th| |00003570| 69 73 20 77 69 6c 6c 0d | 09 09 09 09 09 09 5c 20 |is will.|......\ | |00003580| 20 6a 75 73 74 20 61 62 | 6f 75 74 20 61 6c 77 61 | just ab|out alwa| |00003590| 79 73 20 67 69 76 65 20 | 75 73 20 61 20 64 69 73 |ys give |us a dis| |000035a0| 70 6c 20 77 68 69 63 68 | 20 66 69 74 73 0d 09 09 |pl which| fits...| |000035b0| 09 09 09 09 5c 20 20 69 | 6e 20 31 36 20 62 69 74 |....\ i|n 16 bit| |000035c0| 73 0d 09 09 09 09 43 44 | 5f 67 70 72 23 20 2d 3e |s.....CD|_gpr# ->| |000035d0| 20 67 70 72 23 0d 09 09 | 09 09 64 69 73 70 6c 20 | gpr#...|..displ | |000035e0| 63 6f 64 65 5f 73 74 61 | 72 74 20 2b 20 43 44 5f |code_sta|rt + CD_| |000035f0| 67 70 72 5f 6c 6f 63 20 | 2d 20 20 2d 3e 20 64 69 |gpr_loc |- -> di| |00003600| 73 70 6c 27 0d 09 09 09 | 54 48 45 4e 0d 09 09 54 |spl'....|THEN...T| |00003610| 48 45 4e 0d 0d 09 09 67 | 70 72 23 20 64 69 73 70 |HEN....g|pr# disp| |00003620| 6c 27 20 20 45 58 49 54 | 0d 09 54 48 45 4e 0d 0d |l' EXIT|..THEN..| |00003630| 0d 09 67 70 72 23 20 6d | 61 69 6e 44 61 74 61 5f |..gpr# m|ainData_| |00003640| 72 65 67 20 3d 0d 09 49 | 46 09 09 09 09 5c 20 49 |reg =..I|F....\ I| |00003650| 66 20 74 68 65 20 61 64 | 64 72 65 73 73 20 69 73 |f the ad|dress is| |00003660| 20 64 6f 77 6e 20 69 6e | 20 74 68 65 20 63 6f 64 | down in| the cod| |00003670| 65 20 67 65 6e 65 72 61 | 74 6f 72 0d 09 09 09 09 |e genera|tor.....| |00003680| 09 5c 20 20 61 72 65 61 | 20 61 6e 64 20 6f 75 74 |.\ area| and out| |00003690| 20 6f 66 20 72 61 6e 67 | 65 20 66 72 6f 6d 20 6d | of rang|e from m| |000036a0| 61 69 6e 44 61 74 61 5f | 72 65 67 2c 20 77 65 0d |ainData_|reg, we.| |000036b0| 09 09 09 09 09 5c 20 20 | 6d 69 67 68 74 20 62 65 |.....\ |might be| |000036c0| 20 61 62 6c 65 20 74 6f | 20 75 73 65 20 52 54 4f | able to| use RTO| |000036d0| 43 20 69 6e 73 74 65 61 | 64 2c 20 77 68 69 63 68 |C instea|d, which| |000036e0| 20 6f 66 0d 09 09 09 09 | 09 5c 20 20 63 6f 75 72 | of.....|.\ cour| |000036f0| 73 65 20 70 6f 69 6e 74 | 73 20 74 6f 20 74 68 65 |se point|s to the| |00003700| 20 73 74 61 72 74 20 6f | 66 20 74 68 65 20 64 61 | start o|f the da| |00003710| 74 61 20 61 72 65 61 2e | 0d 09 09 6d 61 69 6e 44 |ta area.|...mainD| |00003720| 61 74 61 5f 72 65 67 0d | 09 09 64 69 73 70 6c 20 |ata_reg.|..displ | |00003730| 20 64 61 74 61 5f 73 74 | 61 72 74 20 2b 20 20 6e | data_st|art + n| |00003740| 75 63 5f 64 61 74 61 5f | 73 74 61 72 74 20 2d 20 |uc_data_|start - | |00003750| 20 68 61 6c 66 5f 64 69 | 73 70 6c 5f 72 61 6e 67 | half_di|spl_rang| |00003760| 65 20 2d 0d 5c 09 09 74 | 72 75 65 20 31 36 62 69 |e -.\..t|rue 16bi| |00003770| 74 73 3f 20 20 3f 45 58 | 49 54 0d 5c 09 09 0d 5c |ts? ?EX|IT.\...\| |00003780| 09 09 64 69 73 70 6c 20 | 74 72 75 65 20 31 36 62 |..displ |true 16b| |00003790| 69 74 73 3f 20 6e 69 70 | 0d 5c 09 09 49 46 09 32 |its? nip|.\..IF.2| |000037a0| 64 72 6f 70 20 20 52 54 | 4f 43 5f 72 65 67 20 20 |drop RT|OC_reg | |000037b0| 64 69 73 70 6c 20 20 54 | 48 45 4e 0d 09 09 45 58 |displ T|HEN...EX| |000037c0| 49 54 0d 09 54 48 45 4e | 0d 0d 09 67 70 72 23 0d |IT..THEN|...gpr#.| |000037d0| 09 49 46 09 73 65 67 23 | 20 2d 3e 20 73 65 67 23 |.IF.seg#| -> seg#| |000037e0| 5f 74 6f 5f 75 73 65 0d | 09 09 67 70 72 23 0d 09 |_to_use.|..gpr#..| |000037f0| 09 64 69 73 70 6c 20 68 | 61 6c 66 5f 64 69 73 70 |.displ h|alf_disp| |00003800| 6c 5f 72 61 6e 67 65 20 | 2d 0d 09 45 4c 53 45 09 |l_range |-..ELSE.| |00003810| 09 09 5c 20 74 68 65 41 | 64 64 72 20 77 61 73 6e |..\ theA|ddr wasn| |00003820| 27 74 20 69 6e 20 72 61 | 6e 67 65 20 6f 66 20 61 |'t in ra|nge of a| |00003830| 6e 79 20 72 65 67 20 2d | 20 72 65 74 75 72 6e 20 |ny reg -| return | |00003840| 74 77 6f 20 7a 65 72 6f | 73 0d 09 09 30 20 20 30 |two zero|s...0 0| |00003850| 0d 09 54 48 45 4e 0d 3b | 0d 0d 0d 0d 3a 20 28 42 |..THEN.;|....: (B| |00003860| 26 44 29 20 20 28 20 61 | 64 64 72 20 2d 2d 20 67 |&D) ( a|ddr -- g| |00003870| 70 72 23 20 64 69 73 70 | 6c 20 29 0d 09 61 64 64 |pr# disp|l )..add| |00003880| 72 3e 53 26 44 20 20 73 | 26 64 3e 62 26 64 0d 3b |r>S&D s|&d>b&d.;| |00003890| 0d 0d 0d 3a 20 42 26 44 | 20 20 7b 20 74 68 65 41 |...: B&D| { theA| |000038a0| 64 64 72 20 2d 2d 20 72 | 65 67 23 20 64 69 73 70 |ddr -- r|eg# disp| |000038b0| 6c 20 7d 0d 09 74 68 65 | 41 64 64 72 20 28 62 26 |l }..the|Addr (b&| |000038c0| 64 29 20 6f 76 65 72 0d | 09 4e 49 46 09 20 63 72 |d) over.|.NIF. cr| |000038d0| 20 20 74 68 65 41 64 64 | 72 20 2e 68 20 2e 22 20 | theAdd|r .h ." | |000038e0| 20 20 69 73 20 61 6e 20 | 6f 75 74 2d 6f 66 2d 72 | is an |out-of-r| |000038f0| 61 6e 67 65 20 61 64 64 | 72 21 22 20 31 20 64 69 |ange add|r!" 1 di| |00003900| 65 20 20 54 48 45 4e 0d | 3b 0d 0d 0d 5c 20 40 42 |e THEN.|;...\ @B| |00003910| 26 44 20 66 65 74 63 68 | 65 73 20 61 20 72 65 6c |&D fetch|es a rel| |00003920| 6f 63 61 74 61 62 6c 65 | 20 61 64 64 72 20 61 6e |ocatable| addr an| |00003930| 64 20 72 65 74 75 72 6e | 73 20 74 68 65 20 22 72 |d return|s the "r| |00003940| 65 61 6c 22 20 62 61 73 | 65 0d 5c 20 67 70 72 23 |eal" bas|e.\ gpr#| |00003950| 20 61 6e 64 20 64 69 73 | 70 6c 61 63 65 6d 65 6e | and dis|placemen| |00003960| 74 2e 20 20 54 68 69 73 | 20 69 73 20 75 73 65 64 |t. This| is used| |00003970| 20 66 6f 72 20 67 6f 69 | 6e 67 20 66 72 6f 6d 20 | for goi|ng from | |00003980| 74 68 65 20 63 6f 64 65 | 0d 5c 20 20 61 72 65 61 |the code|.\ area| |00003990| 20 74 6f 20 74 68 65 20 | 64 61 74 61 20 61 72 65 | to the |data are| |000039a0| 61 2c 20 66 6f 72 20 76 | 61 6c 75 65 73 20 65 74 |a, for v|alues et| |000039b0| 63 2e 0d 0d 3a 20 40 42 | 26 44 20 7b 20 61 64 64 |c...: @B|&D { add| |000039c0| 72 20 5c 20 72 65 6c 6f | 63 41 64 64 72 20 73 65 |r \ relo|cAddr se| |000039d0| 67 23 20 64 69 73 70 6c | 20 67 70 72 23 20 2d 2d |g# displ| gpr# --| |000039e0| 20 67 70 72 23 20 64 69 | 73 70 6c 27 20 7d 0d 09 | gpr# di|spl' }..| |000039f0| 61 64 64 72 20 40 20 20 | 2d 3e 20 72 65 6c 6f 63 |addr @ |-> reloc| |00003a00| 41 64 64 72 0d 09 72 65 | 6c 6f 63 41 64 64 72 20 |Addr..re|locAddr | |00003a10| 20 24 20 66 66 66 66 66 | 66 20 61 6e 64 20 20 2d | $ fffff|f and -| |00003a20| 3e 20 64 69 73 70 6c 0d | 09 72 65 6c 6f 63 41 64 |> displ.|.relocAd| |00003a30| 64 72 20 20 32 34 20 3e | 3e 20 20 2d 3e 20 73 65 |dr 24 >|> -> se| |00003a40| 67 23 0d 09 73 65 67 23 | 20 64 69 73 70 6c 20 20 |g#..seg#| displ | |00003a50| 73 26 64 3e 62 26 64 0d | 09 6f 76 65 72 20 4e 49 |s&d>b&d.|.over NI| |00003a60| 46 20 20 37 30 20 64 69 | 65 20 20 54 48 45 4e 09 |F 70 di|e THEN.| |00003a70| 09 5c 20 73 65 67 23 20 | 64 69 64 6e 27 74 20 72 |.\ seg# |didn't r| |00003a80| 65 66 65 72 20 74 6f 20 | 61 20 6c 6f 61 64 65 64 |efer to |a loaded| |00003a90| 20 72 65 67 2c 20 6f 72 | 20 77 61 73 20 6a 75 73 | reg, or| was jus| |00003aa0| 74 0d 09 09 09 09 09 09 | 09 09 5c 20 67 61 72 62 |t.......|..\ garb| |00003ab0| 61 67 65 20 2d 20 22 6e | 6f 74 20 61 20 72 65 6c |age - "n|ot a rel| |00003ac0| 6f 63 20 61 64 64 72 22 | 0d 28 2a 0d 09 73 65 67 |oc addr"|.(*..seg| |00003ad0| 23 20 73 65 67 23 3e 67 | 70 72 23 20 20 2d 3e 20 |# seg#>g|pr# -> | |00003ae0| 67 70 72 23 0d 0d 09 67 | 70 72 23 20 6d 61 69 6e |gpr#...g|pr# main| |00003af0| 43 6f 64 65 5f 72 65 67 | 20 3d 0d 09 49 46 09 6d |Code_reg| =..IF.m| |00003b00| 61 69 6e 43 6f 64 65 5f | 72 65 67 0d 09 09 64 69 |ainCode_|reg...di| |00003b10| 73 70 6c 20 63 6f 64 65 | 5f 73 74 61 72 74 20 2b |spl code|_start +| |00003b20| 20 6e 75 63 5f 63 6f 64 | 65 5f 73 74 61 72 74 20 | nuc_cod|e_start | |00003b30| 2d 20 20 68 61 6c 66 5f | 64 69 73 70 6c 5f 72 61 |- half_|displ_ra| |00003b40| 6e 67 65 20 2d 0d 09 09 | 45 58 49 54 0d 09 54 48 |nge -...|EXIT..TH| |00003b50| 45 4e 0d 09 0d 09 67 70 | 72 23 20 6d 61 69 6e 44 |EN....gp|r# mainD| |00003b60| 61 74 61 5f 72 65 67 20 | 3d 0d 09 49 46 09 6d 61 |ata_reg |=..IF.ma| |00003b70| 69 6e 44 61 74 61 5f 72 | 65 67 0d 09 09 64 69 73 |inData_r|eg...dis| |00003b80| 70 6c 20 20 64 61 74 61 | 5f 73 74 61 72 74 20 2b |pl data|_start +| |00003b90| 20 20 6e 75 63 5f 64 61 | 74 61 5f 73 74 61 72 74 | nuc_da|ta_start| |00003ba0| 20 2d 20 20 68 61 6c 66 | 5f 64 69 73 70 6c 5f 72 | - half|_displ_r| |00003bb0| 61 6e 67 65 20 2d 0d 09 | 09 45 58 49 54 0d 09 54 |ange -..|.EXIT..T| |00003bc0| 48 45 4e 0d 0d 09 67 70 | 72 23 0d 09 49 46 09 67 |HEN...gp|r#..IF.g| |00003bd0| 70 72 23 20 20 64 69 73 | 70 6c 20 68 61 6c 66 5f |pr# dis|pl half_| |00003be0| 64 69 73 70 6c 5f 72 61 | 6e 67 65 20 2d 0d 09 09 |displ_ra|nge -...| |00003bf0| 09 09 09 5c 20 6d 61 63 | 68 69 6e 65 20 69 6e 73 |...\ mac|hine ins| |00003c00| 74 72 6e 73 20 75 73 65 | 20 61 20 73 69 67 6e 65 |trns use| a signe| |00003c10| 64 20 64 69 73 70 6c 2c | 20 73 6f 20 77 65 0d 09 |d displ,| so we..| |00003c20| 09 09 09 09 5c 20 20 70 | 6f 69 6e 74 20 62 61 73 |....\ p|oint bas| |00003c30| 65 20 72 65 67 73 20 33 | 32 6b 20 61 62 6f 76 65 |e regs 3|2k above| |00003c40| 20 74 68 65 20 73 65 67 | 20 73 74 61 72 74 0d 09 | the seg| start..| |00003c50| 09 09 09 09 09 09 09 09 | 09 0d 09 45 4c 53 45 09 |........|...ELSE.| |00003c60| 09 09 5c 20 73 65 67 23 | 20 64 69 64 6e 27 74 20 |..\ seg#| didn't | |00003c70| 72 65 66 65 72 20 74 6f | 20 61 20 6c 6f 61 64 65 |refer to| a loade| |00003c80| 64 20 72 65 67 2c 20 6f | 72 20 77 61 73 20 6a 75 |d reg, o|r was ju| |00003c90| 73 74 20 67 61 72 62 61 | 67 65 0d 09 09 37 30 20 |st garba|ge...70 | |00003ca0| 64 69 65 09 09 5c 20 22 | 20 6e 6f 74 20 61 20 72 |die..\ "| not a r| |00003cb0| 65 6c 6f 63 20 61 64 64 | 72 22 0d 09 54 48 45 4e |eloc add|r"..THEN| |00003cc0| 0d 2a 29 0d 3b 0d 0d 0d | 3a 20 52 45 4c 4f 43 21 |.*).;...|: RELOC!| |00003cd0| 20 20 7b 20 74 68 65 41 | 64 64 72 20 64 65 73 74 | { theA|ddr dest| |00003ce0| 20 2d 2d 20 7d 0d 5c 20 | 74 68 65 41 64 64 72 20 | -- }.\ |theAddr | |00003cf0| 24 20 31 30 30 30 20 75 | 3c 20 69 66 20 64 62 67 |$ 1000 u|< if dbg| |00003d00| 72 20 74 68 65 6e 0d 09 | 74 68 65 41 64 64 72 20 |r then..|theAddr | |00003d10| 61 64 64 72 3e 53 26 44 | 0d 09 24 20 66 66 66 66 |addr>S&D|..$ ffff| |00003d20| 66 66 20 61 6e 64 20 20 | 73 77 61 70 20 20 32 34 |ff and |swap 24| |00003d30| 20 3c 3c 20 20 6f 72 0d | 09 64 65 73 74 20 21 0d | << or.|.dest !.| |00003d40| 3b 0d 0d 0d 0d 5c 09 09 | 09 09 3d 3d 3d 3d 3d 3d |;....\..|..======| |00003d50| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========| |00003d60| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 0d 5c 09 09 09 09 |========|==.\....| |00003d70| 43 4f 4e 56 45 52 53 49 | 4f 4e 20 42 45 54 57 45 |CONVERSI|ON BETWE| |00003d80| 45 4e 20 52 45 4c 41 54 | 49 56 45 20 41 4e 44 0d |EN RELAT|IVE AND.| |00003d90| 5c 09 09 09 20 20 20 20 | 20 09 41 42 53 4f 4c 55 |\... | .ABSOLU| |00003da0| 54 45 20 41 44 44 52 45 | 53 53 45 53 0d 5c 09 09 |TE ADDRE|SSES.\..| |00003db0| 09 09 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |..======|========| |00003dc0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========| |00003dd0| 3d 3d 0d 0d 5c 20 4e 6f | 74 65 3a 20 40 61 62 73 |==..\ No|te: @abs| |00003de0| 20 69 73 20 61 6c 72 65 | 61 64 79 20 64 65 66 69 | is alre|ady defi| |00003df0| 6e 65 64 20 69 6e 20 53 | 65 74 75 70 2c 20 73 69 |ned in S|etup, si| |00003e00| 6e 63 65 20 77 65 20 6e | 65 65 64 65 64 20 69 74 |nce we n|eeded it| |00003e10| 20 65 61 72 6c 69 65 72 | 2e 0d 0d 0d 3a 20 44 49 | earlier|....: DI| |00003e20| 53 50 4c 41 43 45 20 20 | 20 28 20 61 64 64 72 20 |SPLACE | ( addr | |00003e30| 2d 2d 20 61 64 64 72 27 | 20 29 20 20 69 6e 6c 69 |-- addr'| ) inli| |00003e40| 6e 65 7b 20 64 75 70 20 | 40 20 64 75 70 20 69 66 |ne{ dup |@ dup if| |00003e50| 20 2b 20 65 6c 73 65 20 | 6e 69 70 20 74 68 65 6e | + else |nip then| |00003e60| 7d 20 20 3b 0d 3a 20 57 | 44 49 53 50 4c 41 43 45 |} ;.: W|DISPLACE| |00003e70| 20 20 28 20 61 64 64 72 | 20 2d 2d 20 61 64 64 72 | ( addr| -- addr| |00003e80| 27 20 29 20 20 69 6e 6c | 69 6e 65 7b 20 64 75 70 |' ) inl|ine{ dup| |00003e90| 20 77 40 78 20 64 75 70 | 20 69 66 20 2b 20 65 6c | w@x dup| if + el| |00003ea0| 73 65 20 6e 69 70 20 74 | 68 65 6e 7d 20 20 3b 0d |se nip t|hen} ;.| |00003eb0| 0d 3a 20 44 49 53 50 4c | 21 20 20 7b 20 73 72 63 |.: DISPL|! { src| |00003ec0| 20 64 73 74 20 2d 2d 20 | 7d 0d 5c 20 53 74 6f 72 | dst -- |}.\ Stor| |00003ed0| 65 73 20 74 68 65 20 73 | 6f 75 72 63 65 20 61 64 |es the s|ource ad| |00003ee0| 64 72 65 73 73 20 61 73 | 20 61 20 72 65 6c 61 74 |dress as| a relat| |00003ef0| 69 76 65 20 61 64 64 72 | 65 73 73 20 61 74 20 74 |ive addr|ess at t| |00003f00| 68 65 20 64 65 73 74 69 | 6e 61 74 69 6f 6e 2e 0d |he desti|nation..| |00003f10| 09 73 72 63 20 64 73 74 | 20 2d 20 20 64 73 74 20 |.src dst| - dst | |00003f20| 21 20 20 3b 0d 0d 3a 20 | 57 44 49 53 50 4c 21 20 |! ;..: |WDISPL! | |00003f30| 20 7b 20 73 72 63 20 64 | 73 74 20 2d 2d 20 7d 0d | { src d|st -- }.| |00003f40| 5c 20 53 74 6f 72 65 73 | 20 74 68 65 20 73 6f 75 |\ Stores| the sou| |00003f50| 72 63 65 20 61 64 64 72 | 65 73 73 20 61 73 20 61 |rce addr|ess as a| |00003f60| 20 73 68 6f 72 74 20 72 | 65 6c 61 74 69 76 65 20 | short r|elative | |00003f70| 61 64 64 72 65 73 73 20 | 61 74 20 74 68 65 20 64 |address |at the d| |00003f80| 65 73 74 69 6e 61 74 69 | 6f 6e 0d 5c 20 28 69 74 |estinati|on.\ (it| |00003f90| 20 69 73 20 72 65 6c 61 | 74 69 76 65 20 74 6f 20 | is rela|tive to | |00003fa0| 74 68 65 20 64 65 73 74 | 69 6e 61 74 69 6f 6e 29 |the dest|ination)| |00003fb0| 2e 0d 09 73 72 63 20 64 | 73 74 20 2d 20 20 64 73 |...src d|st - ds| |00003fc0| 74 20 77 21 20 20 3b 0d | 0d 0d 3a 20 72 65 6c 6f |t w! ;.|..: relo| |00003fd0| 63 2c 09 09 44 50 09 72 | 65 6c 6f 63 21 20 20 34 |c,..DP.r|eloc! 4| |00003fe0| 20 2b 2b 3e 20 44 50 20 | 20 20 3b 0d 3a 20 72 65 | ++> DP | ;.: re| |00003ff0| 6c 6f 63 43 6f 64 65 2c | 09 43 44 50 20 72 65 6c |locCode,|.CDP rel| |00004000| 6f 63 21 20 20 34 20 2b | 2b 3e 20 43 44 50 20 20 |oc! 4 +|+> CDP | |00004010| 3b 0d 3a 20 64 69 73 70 | 6c 43 6f 64 65 2c 09 43 |;.: disp|lCode,.C| |00004020| 44 50 20 64 69 73 70 6c | 21 09 34 20 2b 2b 3e 20 |DP displ|!.4 ++> | |00004030| 43 44 50 20 20 3b 0d 0d | 0d 0d 5c 09 09 09 3d 3d |CDP ;..|..\...==| |00004040| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========| |00004050| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========| |00004060| 3d 3d 3d 0d 5c 09 09 09 | 09 09 44 49 43 54 49 4f |===.\...|..DICTIO| |00004070| 4e 41 52 59 20 4f 50 45 | 52 41 54 49 4f 4e 53 0d |NARY OPE|RATIONS.| |00004080| 5c 09 09 09 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |\...====|========| |00004090| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========| |000040a0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 0d 0d 66 6f 72 77 61 |========|=..forwa| |000040b0| 72 64 20 64 65 66 69 6e | 65 64 3f 09 09 5c 20 6e |rd defin|ed?..\ n| |000040c0| 65 65 64 65 64 20 62 79 | 20 46 4f 52 47 45 54 2e |eeded by| FORGET.| |000040d0| 20 20 44 65 66 69 6e 65 | 64 20 69 6e 20 70 6e 75 | Define|d in pnu| |000040e0| 63 34 2e 0d 0d 0d 28 2a | 0d 50 61 74 63 68 65 73 |c4....(*|.Patches| |000040f0| 5f 64 6f 6e 65 20 69 73 | 20 63 61 6c 6c 65 64 20 |_done is| called | |00004100| 6f 6e 20 74 68 65 20 36 | 38 6b 20 61 66 74 65 72 |on the 6|8k after| |00004110| 20 61 6e 79 20 6e 65 77 | 20 69 6e 73 74 72 75 63 | any new| instruc| |00004120| 74 69 6f 6e 73 20 68 61 | 76 65 20 62 65 65 6e 0d |tions ha|ve been.| |00004130| 73 74 6f 72 65 64 2c 20 | 6f 72 20 70 61 74 63 68 |stored, |or patch| |00004140| 65 73 20 68 61 76 65 20 | 62 65 65 6e 20 64 6f 6e |es have |been don| |00004150| 65 2c 20 61 6e 64 20 62 | 65 66 6f 72 65 20 74 68 |e, and b|efore th| |00004160| 65 20 69 6e 73 74 72 75 | 63 74 69 6f 6e 73 20 61 |e instru|ctions a| |00004170| 72 65 0d 65 78 65 63 75 | 74 65 64 2e 20 20 49 74 |re.execu|ted. It| |00004180| 20 66 6c 75 73 68 65 73 | 20 74 68 65 20 69 6e 73 | flushes| the ins| |00004190| 74 72 75 63 74 69 6f 6e | 20 63 61 63 68 65 20 69 |truction| cache i| |000041a0| 66 20 6e 65 63 65 73 73 | 61 72 79 2e 0d 0d 4f 6e |f necess|ary...On| |000041b0| 20 73 6f 6d 65 20 50 50 | 43 20 6d 6f 64 65 6c 73 | some PP|C models| |000041c0| 20 74 68 65 72 65 27 73 | 20 61 6c 73 6f 20 61 20 | there's| also a | |000041d0| 73 65 70 61 72 61 74 65 | 20 69 63 61 63 68 65 20 |separate| icache | |000041e0| 61 6e 64 20 64 63 61 63 | 68 65 2c 20 73 6f 20 77 |and dcac|he, so w| |000041f0| 65 20 68 61 76 65 0d 74 | 6f 20 64 6f 20 74 68 65 |e have.t|o do the| |00004200| 20 73 61 6d 65 20 73 6f | 72 74 20 6f 66 20 74 68 | same so|rt of th| |00004210| 69 6e 67 2e 20 20 54 68 | 65 20 61 70 70 72 6f 70 |ing. Th|e approp| |00004220| 72 69 61 74 65 20 73 65 | 71 75 65 6e 63 65 20 6f |riate se|quence o| |00004230| 66 20 6f 70 73 20 6d 75 | 73 74 0d 62 65 20 65 78 |f ops mu|st.be ex| |00004240| 65 63 75 74 65 64 20 77 | 69 74 68 20 69 6e 74 65 |ecuted w|ith inte| |00004250| 72 72 75 70 74 73 20 6f | 66 66 2c 20 73 6f 20 41 |rrupts o|ff, so A| |00004260| 70 70 6c 65 20 68 65 6c | 70 66 75 6c 6c 79 20 70 |pple hel|pfully p| |00004270| 72 6f 76 69 64 65 73 20 | 61 20 63 61 6c 6c 0d 74 |rovides |a call.t| |00004280| 6f 20 64 6f 20 69 74 20 | 2d 2d 20 4d 61 6b 65 44 |o do it |-- MakeD| |00004290| 61 74 61 45 78 65 63 75 | 74 61 62 6c 65 2e 0d 2a |ataExecu|table..*| |000042a0| 29 0d 0d 3a 66 20 46 49 | 58 5f 43 41 43 48 45 53 |)..:f FI|X_CACHES| |000042b0| 20 20 7b 20 61 64 64 72 | 20 6c 65 6e 20 2d 2d 20 | { addr| len -- | |000042c0| 7d 0d 09 6c 65 6e 20 30 | 45 58 49 54 0d 09 61 64 |}..len 0|EXIT..ad| |000042d0| 64 72 20 6c 65 6e 20 20 | 25 5f 4d 61 6b 65 44 61 |dr len |%_MakeDa| |000042e0| 74 61 45 78 65 63 75 74 | 61 62 6c 65 0d 3b 66 0d |taExecut|able.;f.| |000042f0| 0d 0d 5c 20 3a 20 41 4c | 4c 4f 54 09 09 28 20 6e |..\ : AL|LOT..( n| |00004300| 20 2d 2d 20 29 09 2b 2b | 3e 20 44 50 20 20 3b 0d | -- ).++|> DP ;.| |00004310| 3a 20 52 45 53 45 52 56 | 45 09 28 20 6e 20 2d 2d |: RESERV|E.( n --| |00004320| 20 29 09 44 50 20 6f 76 | 65 72 20 30 20 66 69 6c | ).DP ov|er 0 fil| |00004330| 6c 20 20 2b 2b 3e 20 44 | 50 20 20 3b 0d 0d 3a 20 |l ++> D|P ;..: | |00004340| 2c 20 20 28 20 6e 20 2d | 2d 20 29 09 44 50 20 21 |, ( n -|- ).DP !| |00004350| 09 34 20 2b 2b 3e 20 44 | 50 20 20 3b 0d 3a 20 57 |.4 ++> D|P ;.: W| |00004360| 2c 20 28 20 6e 20 2d 2d | 20 29 09 44 50 20 77 21 |, ( n --| ).DP w!| |00004370| 09 32 20 2b 2b 3e 20 44 | 50 20 20 3b 0d 3a 20 43 |.2 ++> D|P ;.: C| |00004380| 2c 20 28 20 6e 20 2d 2d | 20 29 09 44 50 20 63 21 |, ( n --| ).DP c!| |00004390| 09 31 20 2b 2b 3e 20 44 | 50 20 20 3b 0d 0d 3a 20 |.1 ++> D|P ;..: | |000043a0| 4e 2c 20 28 20 61 64 64 | 72 20 6c 65 6e 20 2d 2d |N, ( add|r len --| |000043b0| 20 29 09 3e 72 20 20 44 | 50 20 72 40 20 63 6d 6f | ).>r D|P r@ cmo| |000043c0| 76 65 20 20 72 3e 20 61 | 6c 6c 6f 74 20 20 3b 0d |ve r> a|llot ;.| |000043d0| 0d 3a 20 44 49 53 50 4c | 2c 20 20 28 20 73 72 63 |.: DISPL|, ( src| |000043e0| 20 2d 2d 20 29 0d 09 44 | 50 20 2d 20 20 2c 20 20 | -- )..D|P - , | |000043f0| 3b 0d 0d 0d 3a 20 63 6f | 64 65 2c 09 09 43 44 50 |;...: co|de,..CDP| |00004400| 20 21 09 34 20 2b 2b 3e | 20 43 44 50 20 20 3b 0d | !.4 ++>| CDP ;.| |00004410| 3a 20 63 6f 64 65 57 2c | 09 43 44 50 20 77 21 09 |: codeW,|.CDP w!.| |00004420| 32 20 2b 2b 3e 20 43 44 | 50 20 20 3b 0d 3a 20 63 |2 ++> CD|P ;.: c| |00004430| 6f 64 65 43 2c 09 43 44 | 50 20 63 21 09 31 20 2b |odeC,.CD|P c!.1 +| |00004440| 2b 3e 20 43 44 50 20 20 | 3b 0d 0d 3a 20 63 6f 64 |+> CDP |;..: cod| |00004450| 65 4e 2c 20 20 28 20 61 | 64 64 72 20 6c 65 6e 20 |eN, ( a|ddr len | |00004460| 2d 2d 20 29 0d 09 74 75 | 63 6b 0d 09 43 44 50 20 |-- )..tu|ck..CDP | |00004470| 73 77 61 70 20 63 6d 6f | 76 65 0d 09 2b 2b 3e 20 |swap cmo|ve..++> | |00004480| 43 44 50 0d 3b 0d 0d 3a | 20 41 4c 49 47 4e 34 0d |CDP.;..:| ALIGN4.| |00004490| 09 44 50 0d 09 34 20 72 | 65 73 65 72 76 65 09 09 |.DP..4 r|eserve..| |000044a0| 09 5c 20 6a 75 73 74 20 | 74 6f 20 65 6e 73 75 72 |.\ just |to ensur| |000044b0| 65 20 70 61 64 20 62 79 | 74 65 73 20 61 72 65 20 |e pad by|tes are | |000044c0| 7a 65 72 6f 0d 09 33 20 | 2b 20 20 24 20 66 66 66 |zero..3 |+ $ fff| |000044d0| 66 66 66 66 63 20 61 6e | 64 20 20 2d 3e 20 44 50 |ffffc an|d -> DP| |000044e0| 0d 3b 0d 0d 3a 20 41 4c | 49 47 4e 38 0d 09 44 50 |.;..: AL|IGN8..DP| |000044f0| 0d 09 38 20 72 65 73 65 | 72 76 65 0d 09 37 20 2b |..8 rese|rve..7 +| |00004500| 20 20 24 20 66 66 66 66 | 66 66 66 38 20 61 6e 64 | $ ffff|fff8 and| |00004510| 20 20 2d 3e 20 44 50 0d | 3b 0d 0d 3a 20 41 4c 49 | -> DP.|;..: ALI| |00004520| 47 4e 09 09 61 6c 69 67 | 6e 34 20 20 3b 0d 3a 20 |GN..alig|n4 ;.: | |00004530| 41 4c 49 47 4e 2d 44 50 | 09 61 6c 69 67 6e 34 20 |ALIGN-DP|.align4 | |00004540| 20 3b 0d 0d 3a 20 23 41 | 4c 49 47 4e 09 69 6e 6c | ;..: #A|LIGN.inl| |00004550| 69 6e 65 7b 20 33 2b 20 | 2d 34 20 61 6e 64 7d 20 |ine{ 3+ |-4 and} | |00004560| 20 3b 09 09 5c 20 61 20 | 73 79 6e 6f 6e 79 6d 20 | ;..\ a |synonym | |00004570| 66 6f 72 20 23 61 6c 69 | 67 6e 34 20 28 69 6e 20 |for #ali|gn4 (in | |00004580| 70 6e 75 63 31 29 0d 09 | 09 09 09 09 09 09 09 09 |pnuc1)..|........| |00004590| 09 5c 20 20 2d 20 6f 6e | 20 74 68 65 20 50 50 43 |.\ - on| the PPC| |000045a0| 20 6f 75 72 20 64 65 66 | 61 75 6c 74 20 61 6c 69 | our def|ault ali| |000045b0| 67 6e 6d 65 6e 74 20 69 | 73 0d 09 09 09 09 09 09 |gnment i|s.......| |000045c0| 09 09 09 09 5c 20 20 34 | 20 62 79 74 65 0d 3a 20 |....\ 4| byte.: | |000045d0| 41 4c 49 47 4e 45 44 09 | 69 6e 6c 69 6e 65 7b 20 |ALIGNED.|inline{ | |000045e0| 33 2b 20 2d 34 20 61 6e | 64 7d 20 20 3b 09 09 5c |3+ -4 an|d} ;..\| |000045f0| 20 41 4e 53 49 20 2d 20 | 73 61 6d 65 20 61 73 20 | ANSI - |same as | |00004600| 23 61 6c 69 67 6e 34 20 | 6f 6e 20 50 50 43 0d 3a |#align4 |on PPC.:| |00004610| 20 23 41 4c 49 47 4e 32 | 09 69 6e 6c 69 6e 65 7b | #ALIGN2|.inline{| |00004620| 20 31 2b 20 2d 32 20 61 | 6e 64 7d 20 20 3b 0d 0d | 1+ -2 a|nd} ;..| |00004630| 5c 20 23 61 6c 69 67 6e | 34 20 69 73 20 69 6e 20 |\ #align|4 is in | |00004640| 70 6e 75 63 31 2c 20 73 | 69 6e 63 65 20 77 65 20 |pnuc1, s|ince we | |00004650| 6e 65 65 64 20 69 74 20 | 65 61 72 6c 79 0d 0d 3a |need it |early..:| |00004660| 20 23 41 4c 49 47 4e 38 | 09 69 6e 6c 69 6e 65 7b | #ALIGN8|.inline{| |00004670| 20 37 20 2b 20 20 24 20 | 66 66 66 66 66 66 66 38 | 7 + $ |fffffff8| |00004680| 20 61 6e 64 7d 20 20 3b | 0d 3a 20 23 41 4c 49 47 | and} ;|.: #ALIG| |00004690| 4e 31 36 09 69 6e 6c 69 | 6e 65 7b 20 31 35 20 2b |N16.inli|ne{ 15 +| |000046a0| 20 20 24 20 66 66 66 66 | 66 66 66 30 20 61 6e 64 | $ ffff|fff0 and| |000046b0| 7d 20 20 3b 0d 0d 3a 20 | 23 61 6c 69 67 6e 5f 32 |} ;..: |#align_2| |000046c0| 2a 2a 6e 09 28 20 76 61 | 6c 75 65 20 6e 20 2d 2d |**n.( va|lue n --| |000046d0| 20 76 61 6c 75 65 27 20 | 29 0d 09 31 20 73 77 61 | value' |)..1 swa| |000046e0| 70 20 3c 3c 20 31 2d 20 | 64 75 70 20 6e 6f 74 20 |p << 1- |dup not | |000046f0| 64 6f 77 6e 20 2b 20 61 | 6e 64 20 20 3b 0d 09 09 |down + a|nd ;...| |00004700| 09 0d 0d 3a 20 23 4f 46 | 46 2d 41 4c 49 47 4e 09 |...: #OF|F-ALIGN.| |00004710| 5c 20 28 20 6e 20 2d 2d | 20 6e 27 20 29 20 20 41 |\ ( n --| n' ) A| |00004720| 6c 69 67 6e 73 20 74 6f | 20 74 68 65 20 32 2d 62 |ligns to| the 2-b| |00004730| 79 74 65 20 62 6f 75 6e | 64 61 72 79 20 62 65 74 |yte boun|dary bet| |00004740| 77 65 65 6e 0d 09 09 09 | 09 5c 20 20 61 64 6a 61 |ween....|.\ adja| |00004750| 63 65 6e 74 20 34 2d 62 | 79 74 65 20 62 6f 75 6e |cent 4-b|yte boun| |00004760| 64 61 72 69 65 73 2e 0d | 09 35 20 2b 20 24 20 66 |daries..|.5 + $ f| |00004770| 66 66 66 66 66 66 63 20 | 61 6e 64 20 32 2d 20 20 |ffffffc |and 2- | |00004780| 3b 0d 0d 0d 0d 3a 20 63 | 6f 64 65 5f 61 6c 6c 6f |;....: c|ode_allo| |00004790| 74 09 2b 2b 3e 20 43 44 | 50 20 20 3b 0d 3a 20 63 |t.++> CD|P ;.: c| |000047a0| 6f 64 65 5f 72 65 73 65 | 72 76 65 09 43 44 50 20 |ode_rese|rve.CDP | |000047b0| 6f 76 65 72 20 65 72 61 | 73 65 20 20 2b 2b 3e 20 |over era|se ++> | |000047c0| 43 44 50 20 20 3b 0d 3a | 20 63 6f 64 65 5f 61 6c |CDP ;.:| code_al| |000047d0| 69 67 6e 09 43 44 50 20 | 34 20 65 72 61 73 65 20 |ign.CDP |4 erase | |000047e0| 20 43 44 50 20 23 61 6c | 69 67 6e 34 20 20 2d 3e | CDP #al|ign4 ->| |000047f0| 20 43 44 50 20 20 3b 0d | 0d 0d 0d 5c 20 46 4f 52 | CDP ;.|...\ FOR| |00004800| 47 45 54 20 69 73 6e 27 | 74 20 72 65 61 6c 6c 79 |GET isn'|t really| |00004810| 20 61 64 65 71 75 61 74 | 65 20 6f 6e 20 74 68 65 | adequat|e on the| |00004820| 20 50 50 43 2c 20 73 69 | 6e 63 65 20 69 74 20 63 | PPC, si|nce it c| |00004830| 61 6e 27 74 20 68 61 6e | 64 6c 65 20 74 68 65 0d |an't han|dle the.| |00004840| 5c 20 20 64 61 74 61 20 | 61 72 65 61 20 6f 72 20 |\ data |area or | |00004850| 73 79 73 63 61 6c 6c 5f | 63 68 61 69 6e 20 65 74 |syscall_|chain et| |00004860| 63 2e 20 20 42 75 74 20 | 49 27 6c 6c 20 6b 65 65 |c. But |I'll kee| |00004870| 70 20 69 74 20 66 6f 72 | 20 62 61 63 6b 77 61 72 |p it for| backwar| |00004880| 64 0d 5c 20 20 63 6f 6d | 70 61 74 69 62 69 6c 69 |d.\ com|patibili| |00004890| 74 79 2c 20 61 6e 64 20 | 69 74 20 63 61 6e 20 62 |ty, and |it can b| |000048a0| 65 20 63 61 6c 6c 65 64 | 20 62 79 20 4d 41 52 4b |e called| by MARK| |000048b0| 45 52 20 61 6e 79 77 61 | 79 20 74 6f 20 64 6f 20 |ER anywa|y to do | |000048c0| 74 68 65 0d 5c 20 20 70 | 61 72 74 20 6f 66 20 74 |the.\ p|art of t| |000048d0| 68 65 20 6a 6f 62 20 74 | 68 61 74 20 69 74 20 63 |he job t|hat it c| |000048e0| 61 6e 2e 0d 0d 0d 5c 20 | 54 72 69 6d 20 20 28 20 |an....\ |Trim ( | |000048f0| 6c 66 61 20 2d 2d 20 6e | 65 77 5f 6c 61 74 65 73 |lfa -- n|ew_lates| |00004900| 74 20 29 20 20 69 73 20 | 63 61 6c 6c 65 64 20 62 |t ) is |called b| |00004910| 79 20 28 66 6f 72 67 65 | 74 29 2e 0d 0d 3a 20 74 |y (forge|t)...: t| |00004920| 72 69 6d 20 20 7b 20 6c | 66 61 20 5c 20 63 78 74 |rim { l|fa \ cxt| |00004930| 20 6e 78 74 20 6c 69 6e | 6b 20 6e 65 77 5f 6c 66 | nxt lin|k new_lf| |00004940| 61 20 2d 2d 20 6e 65 77 | 5f 6c 61 74 65 73 74 20 |a -- new|_latest | |00004950| 7d 0d 0d 09 30 20 2d 3e | 20 6e 65 77 5f 6c 66 61 |}...0 ->| new_lfa| |00004960| 0d 09 23 74 68 72 65 61 | 64 73 20 46 4f 52 0d 09 |..#threa|ds FOR..| |00004970| 09 63 6f 6e 74 65 78 74 | 20 20 69 20 20 32 20 3c |.context| i 2 <| |00004980| 3c 20 20 2b 20 20 64 75 | 70 20 2d 3e 20 63 78 74 |< + du|p -> cxt| |00004990| 09 09 5c 20 61 64 64 72 | 20 6f 66 20 74 68 69 73 |..\ addr| of this| |000049a0| 20 63 6f 6e 74 65 78 74 | 20 65 6e 74 72 79 0d 09 | context| entry..| |000049b0| 09 64 69 73 70 6c 61 63 | 65 0d 09 09 42 45 47 49 |.displac|e...BEGI| |000049c0| 4e 09 64 75 70 20 6c 66 | 61 20 75 3e 3d 0d 09 09 |N.dup lf|a u>=...| |000049d0| 57 48 49 4c 45 09 64 69 | 73 70 6c 61 63 65 0d 09 |WHILE.di|splace..| |000049e0| 09 52 45 50 45 41 54 0d | 09 5c 20 6e 65 77 20 63 |.REPEAT.|.\ new c| |000049f0| 6f 6e 74 65 78 74 20 76 | 61 6c 75 65 20 66 6f 72 |ontext v|alue for| |00004a00| 20 74 68 69 73 20 74 68 | 72 65 61 64 0d 09 09 64 | this th|read...d| |00004a10| 75 70 20 6e 65 77 5f 6c | 66 61 20 75 6d 61 78 20 |up new_l|fa umax | |00004a20| 2d 3e 20 6e 65 77 5f 6c | 66 61 0d 09 09 63 78 74 |-> new_l|fa...cxt| |00004a30| 20 64 69 73 70 6c 21 0d | 09 4e 45 58 54 0d 09 6e | displ!.|.NEXT..n| |00004a40| 65 77 5f 6c 66 61 20 6c | 3e 6e 61 6d 65 09 09 5c |ew_lfa l|>name..\| |00004a50| 20 6e 65 77 20 6c 69 6e | 6b 20 66 69 65 6c 64 20 | new lin|k field | |00004a60| 2d 3e 20 6e 65 77 20 6e | 61 6d 65 20 66 69 65 6c |-> new n|ame fiel| |00004a70| 64 2c 20 77 68 69 63 68 | 0d 09 09 09 09 09 09 5c |d, which|.......\| |00004a80| 20 20 77 69 6c 6c 20 62 | 65 63 6f 6d 65 20 74 68 | will b|ecome th| |00004a90| 65 20 6e 65 77 20 4c 41 | 54 45 53 54 0d 3b 0d 0d |e new LA|TEST.;..| |00004aa0| 0d 3a 20 28 46 4f 52 47 | 45 54 29 20 20 7b 20 6c |.: (FORG|ET) { l| |00004ab0| 66 61 20 2d 2d 20 7d 0d | 09 6c 66 61 20 66 65 6e |fa -- }.|.lfa fen| |00004ac0| 63 65 20 75 3c 20 49 46 | 20 20 2d 31 35 20 64 69 |ce u< IF| -15 di| |00004ad0| 65 20 20 54 48 45 4e 09 | 09 5c 20 22 69 6e 76 61 |e THEN.|.\ "inva| |00004ae0| 6c 69 64 20 46 4f 52 47 | 45 54 22 0d 09 6c 66 61 |lid FORG|ET"..lfa| |00004af0| 20 74 72 69 6d 20 20 2d | 3e 20 6c 61 74 65 73 74 | trim -|> latest| |00004b00| 0d 0d 5c 20 6e 6f 77 20 | 77 65 20 72 65 73 65 74 |..\ now |we reset| |00004b10| 20 43 44 50 20 74 6f 20 | 6c 66 61 2e 20 20 46 69 | CDP to |lfa. Fi| |00004b20| 72 73 74 20 77 65 20 63 | 61 6c 6c 20 66 69 78 5f |rst we c|all fix_| |00004b30| 63 61 63 68 65 73 20 6f | 6e 20 74 68 65 20 72 61 |caches o|n the ra| |00004b40| 6e 67 65 0d 5c 20 20 77 | 65 27 72 65 20 77 69 70 |nge.\ w|e're wip| |00004b50| 69 6e 67 20 6f 75 74 2c | 20 73 69 6e 63 65 20 69 |ing out,| since i| |00004b60| 74 20 64 6f 65 73 6e 27 | 74 20 65 78 69 73 74 20 |t doesn'|t exist | |00004b70| 61 6e 79 20 6d 6f 72 65 | 2c 20 61 6e 64 20 77 65 |any more|, and we| |00004b80| 27 72 65 0d 5c 20 20 61 | 20 62 69 74 20 70 61 72 |'re.\ a| bit par| |00004b90| 61 6e 6f 69 64 2e 0d 0d | 09 6c 66 61 09 09 09 09 |anoid...|.lfa....| |00004ba0| 09 5c 20 77 68 65 72 65 | 20 77 65 27 72 65 20 77 |.\ where| we're w| |00004bb0| 69 70 69 6e 67 20 6f 75 | 74 20 66 72 6f 6d 0d 09 |iping ou|t from..| |00004bc0| 43 44 50 20 6c 66 61 20 | 2d 09 09 09 5c 20 23 20 |CDP lfa |-...\ # | |00004bd0| 62 79 74 65 73 20 77 65 | 27 72 65 20 77 69 70 69 |bytes we|'re wipi| |00004be0| 6e 67 20 6f 75 74 0d 09 | 66 69 78 5f 63 61 63 68 |ng out..|fix_cach| |00004bf0| 65 73 0d 09 6c 66 61 20 | 2d 3e 20 43 44 50 09 09 |es..lfa |-> CDP..| |00004c00| 09 5c 20 72 65 73 65 74 | 20 43 44 50 20 74 6f 20 |.\ reset| CDP to | |00004c10| 6e 65 77 20 73 70 6f 74 | 0d 3b 0d 0d 0d 3a 20 46 |new spot|.;...: F| |00004c20| 4f 52 47 45 54 0d 09 64 | 65 66 69 6e 65 64 3f 20 |ORGET..d|efined? | |00004c30| 3f 6e 6f 74 66 6f 75 6e | 64 09 09 5c 20 69 2e 65 |?notfoun|d..\ i.e| |00004c40| 2e 20 74 69 63 6b 20 2d | 20 62 75 74 20 77 65 20 |. tick -| but we | |00004c50| 63 61 6e 27 74 20 64 65 | 66 69 6e 65 20 74 68 61 |can't de|fine tha| |00004c60| 74 20 79 65 74 20 73 69 | 6e 63 65 0d 09 09 09 09 |t yet si|nce.....| |00004c70| 09 09 09 5c 20 20 77 65 | 20 73 74 69 6c 6c 20 6e |...\ we| still n| |00004c80| 65 65 64 20 74 68 65 20 | 36 38 6b 20 74 69 63 6b |eed the |68k tick| |00004c90| 2e 20 20 49 74 27 73 20 | 69 6e 20 71 70 43 6f 6e |. It's |in qpCon| |00004ca0| 64 2e 0d 09 3e 6c 69 6e | 6b 20 28 66 6f 72 67 65 |d...>lin|k (forge| |00004cb0| 74 29 20 20 3b 0d 0d 0d | 0d 5c 09 09 3d 3d 3d 3d |t) ;...|.\..====| |00004cc0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 20 20 4d 6f 64 75 6c |========|= Modul| |00004cd0| 65 2d 72 65 6c 61 74 65 | 64 20 77 6f 72 64 73 20 |e-relate|d words | |00004ce0| 20 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d | =======|========| |00004cf0| 3d 3d 3d 3d 0d 0d 28 2a | 09 54 68 65 72 65 20 61 |====..(*|.There a| |00004d00| 72 65 20 61 20 66 65 77 | 20 6d 6f 64 75 6c 65 2d |re a few| module-| |00004d10| 72 65 6c 61 74 65 64 20 | 77 6f 72 64 73 20 77 68 |related |words wh| |00004d20| 69 63 68 20 77 65 20 75 | 73 65 20 69 6e 20 74 68 |ich we u|se in th| |00004d30| 65 20 63 6c 61 73 73 0d | 09 63 6f 64 65 2e 20 20 |e class.|.code. | |00004d40| 48 6f 6c 64 6d 6f 64 20 | 69 73 20 66 6f 72 77 61 |Holdmod |is forwa| |00004d50| 72 64 20 64 65 66 69 6e | 65 64 2c 20 61 6e 64 20 |rd defin|ed, and | |00004d60| 72 65 73 6f 6c 76 65 64 | 20 69 6e 20 7a 4d 6f 64 |resolved| in zMod| |00004d70| 75 6c 65 73 2e 20 20 4f | 66 0d 09 63 6f 75 72 73 |ules. O|f..cours| |00004d80| 65 20 69 74 20 73 68 6f | 75 6c 64 20 6e 65 76 65 |e it sho|uld neve| |00004d90| 72 20 6e 65 65 64 20 74 | 6f 20 62 65 20 65 78 65 |r need t|o be exe| |00004da0| 63 75 74 65 64 20 62 65 | 66 6f 72 65 20 7a 4d 6f |cuted be|fore zMo| |00004db0| 64 75 6c 65 73 20 69 73 | 20 6c 6f 61 64 65 64 21 |dules is| loaded!| |00004dc0| 0d 09 0d 09 75 6e 68 6f | 6c 64 4d 6f 64 20 61 6e |....unho|ldMod an| |00004dd0| 64 20 3f 75 6e 68 6f 6c | 64 4d 6f 64 20 64 6f 6e |d ?unhol|dMod don| |00004de0| 27 74 20 72 65 6c 65 61 | 73 65 20 74 68 65 20 6d |'t relea|se the m| |00004df0| 6f 64 75 6c 65 20 61 73 | 20 74 68 65 79 20 64 6f |odule as| they do| |00004e00| 20 6f 6e 0d 09 74 68 65 | 20 36 38 6b 20 2d 20 6f | on..the| 68k - o| |00004e10| 6e 63 65 20 61 20 6d 6f | 64 75 6c 65 20 69 73 20 |nce a mo|dule is | |00004e20| 6c 6f 61 64 65 64 20 69 | 74 20 73 74 61 79 73 20 |loaded i|t stays | |00004e30| 70 75 74 2e 20 20 53 6f | 20 61 6c 6c 20 74 68 65 |put. So| all the| |00004e40| 73 65 20 77 6f 72 64 73 | 0d 09 68 61 76 65 20 74 |se words|..have t| |00004e50| 6f 20 64 6f 20 68 65 72 | 65 20 69 73 20 63 6c 65 |o do her|e is cle| |00004e60| 61 72 20 68 65 6c 64 4d | 6f 64 2e 0d 2a 29 0d 0d |ar heldM|od..*)..| |00004e70| 66 6f 72 77 61 72 64 20 | 20 68 6f 6c 64 4d 6f 64 |forward | holdMod| |00004e80| 0d 0d 3a 20 75 6e 68 6f | 6c 64 4d 6f 64 09 09 30 |..: unho|ldMod..0| |00004e90| 20 2d 3e 20 68 65 6c 64 | 4d 6f 64 20 20 3b 0d 3a | -> held|Mod ;.:| |00004ea0| 20 3f 75 6e 68 6f 6c 64 | 4d 6f 64 09 30 20 2d 3e | ?unhold|Mod.0 ->| |00004eb0| 20 68 65 6c 64 4d 6f 64 | 20 20 3b 0d 0d 0d 3a 20 | heldMod| ;...: | |00004ec0| 3f 3e 63 6c 61 73 73 49 | 6e 4d 6f 64 20 20 28 20 |?>classI|nMod ( | |00004ed0| 5e 63 6c 61 73 73 20 2d | 2d 20 5e 63 6c 61 73 73 |^class -|- ^class| |00004ee0| 27 20 29 0d 5c 09 30 20 | 2d 3e 20 73 65 67 23 5f |' ).\.0 |-> seg#_| |00004ef0| 61 63 63 65 73 73 65 64 | 09 5c 20 6c 65 61 76 65 |accessed|.\ leave| |00004f00| 20 7a 65 72 6f 20 69 66 | 20 77 65 20 64 6f 6e 27 | zero if| we don'| |00004f10| 74 20 67 6f 20 69 6e 74 | 6f 20 61 20 6d 6f 64 75 |t go int|o a modu| |00004f20| 6c 65 0d 09 64 75 70 20 | 32 2d 20 77 40 09 09 09 |le..dup |2- w@...| |00004f30| 5c 20 63 6c 61 73 73 20 | 68 61 6e 64 6c 65 72 20 |\ class |handler | |00004f40| 63 6f 64 65 0d 09 24 20 | 42 43 32 44 20 3d 0d 09 |code..$ |BC2D =..| |00004f50| 49 46 09 68 6f 6c 64 4d | 6f 64 09 09 09 5c 20 69 |IF.holdM|od...\ i| |00004f60| 66 20 63 6c 61 73 73 5f | 69 6e 5f 6d 6f 64 5f 68 |f class_|in_mod_h| |00004f70| 2c 20 72 65 70 6c 61 63 | 65 73 20 5e 63 6c 61 73 |, replac|es ^clas| |00004f80| 73 20 77 69 74 68 20 74 | 68 65 0d 09 09 09 09 09 |s with t|he......| |00004f90| 09 5c 20 20 78 74 20 6f | 66 20 74 68 65 20 63 6c |.\ xt o|f the cl| |00004fa0| 61 73 73 20 69 6e 20 74 | 68 65 20 6d 6f 64 2c 20 |ass in t|he mod, | |00004fb0| 61 6e 64 20 68 6f 6c 64 | 73 20 69 74 2e 0d 09 54 |and hold|s it...T| |00004fc0| 48 45 4e 0d 3b 0d 0d 0d | 65 6e 64 6c 6f 61 64 0d |HEN.;...|endload.| |00004fd0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........| |00004fe0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........| |00004ff0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........| |00005000| 00 00 01 00 00 00 01 42 | 00 00 00 42 00 00 00 3b |.......B|...B...;| |00005010| 00 00 00 20 00 4c af 8c | 0d d1 ff f9 00 01 f5 29 |... .L..|.......)| |00005020| 00 00 02 0c 00 66 08 57 | 68 61 74 65 76 65 72 40 |.....f.W|hatever@| |00005030| 05 70 6e 75 63 33 02 00 | 00 00 50 61 72 74 53 49 |.pnuc3..|..PartSI| |00005040| 54 21 00 00 00 00 00 00 | 00 00 00 01 82 1d 00 00 |T!......|........| |00005050| 00 00 50 61 72 74 53 49 | 54 21 00 00 00 00 00 00 |..PartSI|T!......| |00005060| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........| |00005070| 00 00 b3 66 c2 76 00 00 | 00 00 00 00 01 7d 10 44 |...f.v..|.....}.D| |00005080| 65 76 2e 43 44 20 4d 61 | 72 20 39 37 20 52 4c 10 |ev.CD Ma|r 97 RL.| |00005090| 00 00 00 00 00 00 00 20 | 00 58 ae f9 6e 97 00 00 |....... |.X..n...| |000050a0| 00 00 00 00 00 00 02 0c | 00 6b 0a 6d 79 20 62 61 |........|.k.my ba| |000050b0| 63 6b 75 70 73 00 00 00 | 00 00 00 30 00 5b 5a 00 |ckups...|...0.[Z.| |000050c0| 43 44 45 46 f0 30 ae 9b | 83 6b ff fd 00 5b 42 f0 |CDEF.0..|.k...[B.| |000050d0| 00 00 02 0c 00 6c 0d 53 | 74 61 74 69 6f 6e 20 53 |.....l.S|tation S| |000050e0| 65 74 75 70 00 00 00 00 | 00 00 00 00 00 00 00 00 |etup....|........| |000050f0| 00 00 af 59 70 2a 00 00 | 00 00 00 00 00 00 00 00 |...Yp*..|........| |00005100| 00 00 00 3e 00 00 4c 38 | 00 00 00 00 00 00 00 00 |...>..L8|........| |00005110| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........| |00005120| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 0e 2a |........|.......*| |00005130| 00 00 0e 2a 00 00 00 00 | 00 00 00 00 00 00 00 00 |...*....|........| |00005140| 00 00 00 00 01 00 00 00 | 01 42 00 00 00 42 00 00 |........|.B...B..| |00005150| 00 3b 02 65 b9 08 2a 9a | 00 00 00 1c 00 32 00 00 |.;.e..*.|.....2..| |00005160| 4d 49 46 4f 00 00 00 0a | 00 80 00 00 00 00 00 00 |MIFO....|........| |00005170| 02 65 bc ac 08 4d 69 73 | 63 49 6e 66 6f 00 00 00 |.e...Mis|cInfo...| +--------+-------------------------+-------------------------+--------+--------+